J'essaie de vérifier si une valeur dans une liste existe dans une phrase comme ci-dessous:
rich = ["Businessman","Robber","Politician"]
poor = ["Programmer","Engineer","Doctor"]
whoAmI = "I am an Engineer"
if rich.*MISSING_HERE* in whoAmI:
print "You are RICH"
else :
print "You are POOR"
Si vous regardez la ligne avec l'instruction if, je vérifie si un élément de rich est disponible dans whoAmI . Comment vérifier cela?
5 Réponses :
Utilisez la méthode any () -
if any(r in whoAmI for r in rich):
print "You are RICH"
else :
print "You are POOR"
Essayez for else boucle
rich = ["Businessman","Robber","Politician"]
poor = ["Programmer","Engineer","Doctor"]
whoAmI = "I am an Engineer"
for r in rich:
if r in whoAmI:
print "You are RICH"
break
else:
print "You are POOR"
Nous pouvons utiliser le module re ou regex de la bibliothèque Python pour rechercher le mot dans la chaîne. Nous utiliserons une simple boucle for (Note: Complexité temporelle: O (n))
import re
rich = ["Businessman","Robber","Politician"]
poor = ["Programmer","Engineer","Doctor"]
whoAmI = "I am an Businessman"
for word in rich:
if re.search(i, whoAmI):
print("Rich")
quit()
print("Poor")
Nous utilisons la fonction intégrée Python quit () afin d'éviter la même résultats de l'affichage plusieurs fois.
Vous pouvez utiliser cette réponse simplifiée
[any( j in rich for j in whoAmI.split())]
S'il remplit la condition, il répondra Vrai (c'est-à-dire 'riche') sinon il notifiera Faux.
p >
Avec une liste de compréhension:
if len([x for x in rich if x in whoAmI]):
print ("You are RICH")
else :
print ("You are POOR")
Vous êtes PAUVRE
Itérez simplement le tableau
richDouble possible de Itération sur des tableaux en Python 3
Que signifie
rich. * MISSING_HERE *?Cela signifie qu'il me manque quelque chose pour vérifier si
whoAmIcontient l'un des éléments derich