[Python] Erreur de type: 'in <string>' nécessite une chaîne comme opérande de gauche, pas une liste

En étudiant le scraping Python, lorsque je traitais des valeurs, j'ai obtenu TypeError: 'in <string>' 'requiert une chaîne comme opérande de gauche, pas comme liste, donc je vais laisser une contre-mesure dans le mémo

Cause de l'erreur

J'essayais de faire une branche conditionnelle pour voir si la chaîne de caractères correspondante était trouvée dans la liste obtenue par Python.

if 'La chaîne de caractères que vous souhaitez appliquer' in i:

Puis j'ai eu cette erreur

TypeError: 'in <string>' requires string as left operand, not list

Contre-mesures

Utiliser la notation d'inclusion de liste

False not in [i in 'La chaîne de caractères que vous souhaitez appliquer'for i dans Une liste contenant les chaînes que vous souhaitez rechercher]

Postscript

Citation du commentaire de @ shiracamus! (Je vous remercie!)

Si vous souhaitez simplement porter un jugement, vous pouvez utiliser n'importe quelle fonction ou toutes les fonctions.

>>> any('test' in item for item in ['hoge', 'fuge', 'hogetestfuge'])
True
>>> all('test' in item for item in ['hoge', 'fuge', 'hogetestfuge'])
False
>>> all('test' in item for item in ['testhoge', 'fugetest', 'hogetestfuge'])
True

référence https://pg-chain.com/python-in https://ai-inter1.com/python-if-in/ https://kuzunoha-ne.hateblo.jp/entry/2019/02/15/213000

Recommended Posts

[Python] Erreur de type: 'in <string>' nécessite une chaîne comme opérande de gauche, pas une liste
Type de chaîne Python2
Python # type de chaîne
La liste Python n'est pas une liste
Ne spécifiez pas un objet mutable (type de liste, type de dictionnaire, etc.) comme valeur initiale de l'argument de fonction de python.
Cours de base Python (4 types numériques / type chaîne de caractères)
[Introduction à l'application Udemy Python3 +] 16. Type de liste
[Python] J'ai essayé d'obtenir le nom du type sous forme de chaîne de caractères à partir de la fonction type