[Python] Typ Fehler: 'in <string>' erfordert einen String als linken Operanden, nicht als Liste

Während des Studiums von Python-Scraping, als ich Werte verarbeitete, bekam ich "TypeError:" in "erfordert eine Zeichenfolge als linken Operanden, nicht als Liste", daher werde ich eine Gegenmaßnahme im Memo belassen

Fehlerursache

Ich habe versucht, eine bedingte Verzweigung durchzuführen, um festzustellen, ob die entsprechende Zeichenfolge in der von Python erhaltenen Liste gefunden wurde.

if 'Die Zeichenfolge, die Sie anwenden möchten' in i:

Dann habe ich diesen Fehler bekommen

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

Gegenmaßnahmen

Verwenden Sie die Listeneinschlussnotation

False not in [i in 'Die Zeichenfolge, die Sie anwenden möchten'für i in Eine Liste mit den Zeichenfolgen, nach denen Sie suchen möchten]

Nachtrag

Zitiert aus @ shiracamus 'Kommentar! (Vielen Dank!)

Wenn Sie nur ein Urteil fällen möchten, können Sie eine beliebige Funktion oder alle Funktionen verwenden.

>>> 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

Referenz 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] Typ Fehler: 'in <string>' erfordert einen String als linken Operanden, nicht als Liste
Python2-Zeichenfolgentyp
Python # String-Typ
Geben Sie kein veränderbares Objekt (Listentyp, Wörterbuchtyp usw.) als Anfangswert des Funktionsarguments von Python an.
Python-Grundkurs (4 numerische Typen / Zeichenfolgen)
[Einführung in die Udemy Python3 + -Anwendung] 16. Listentyp
[Python] Ich habe versucht, den Typnamen als Zeichenfolge aus der Typfunktion abzurufen