文字列のリストがあります(以下の形式)
['email', 'go', 'a', 'instance', 'at', 'boo', 'email', 'message', 'message', 'instance', 'at', 'hello']
2文字未満の長さのものを削除するにはどうすればよいですか?
多くの場合、リスト内包表記を使用すると最も読みやすくなります。
myList = ['email', 'go', 'a', 'instance', 'at', 'boo', 'email', 'message', 'message', 'instance', 'at', 'hello']
myResultList = [x for x in myList if len(x) >=2]
List Comprehensionは、別のリストを繰り返し処理して新しいリストを作成する手段です。myList の各 x の例では、len(x) <= 2 の場合、リスト内包表記は x を保持します。
次のようなこともできます。
myResultList = [x + "!oh" for x in myList if len(x) ==2]
その結果、['go!oh','at!oh','at!oh']