私は現在、他の多くの項目のリスト内にいくつかの望ましくない項目のブラックリストを作成しようとしています。-multiple-要素がリストにない場合、
私は現在、正常に動作し、この非常に醜い条件文を持って、私はそれがに追加する退屈だ見つけ、不良に見えます。手動で追加する必要があります。これは問題ですが、コード内の関数に基づいてブラックリストに追加したいので、手動で追加するだけで十分ではありません。
非常に反復思われる、私がしたい項目のタイトルにあるように「NEW」を希望し、次のすべての条件文は、「ブラックリストにはない」です。
if "NEW" in lst[i][0] and "Pears" not in lst[i][0] and "Strawberries" not in lst[i][0] and "Oranges" not in lst[i][0] and "Cherries" not in lst[i][0] and "Plums" not in lst[i][0] and "Nectarines" not in lst[i][0] and "raspberries" not in lst[i][0] and "Apples" not in lst[i][0]:
私は単純にブラックリストリストを作成する方法を見つけるのが好き、そしてブラックリスト内の任意の項目を別のリストに見つからない場合は、Pythonが進むだろう。
は、私はすでにブラックリストリストを作成しようとした試みている:
lst = ['Broccoli', 'Chicken', 'Oranges', 'Apples', 'Squash', ' Salmon']
blacklist = ['Pears', 'Strawberries', 'Oranges']
#My actual lists are much longer
for i in range(len(lst)):
for blacklisteditem in blacklist:
if blacklisteditem in lst[i]:
print("This item is not blacklisted, proceeding..")
else:
print("This item was blacklisted")
しかし、これが返されます。ここでは明らかに
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item is not blacklisted, proceeding..
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
This item was blacklisted
ない目的。私は見落としているいくつかの解決策がなければならない、誰かが私を助けることができる? "if x in lst:"のロジックを適用したいだけですが、xを複数の項目、できればリスト内の項目、またはおそらく追加できる文字列にしたいのですか?
私は私のプログラムは、追加のエントリを追加できるようにしたいので、私は基本的には、手動でスクリプトを編集するのではなく、このブラックリストにいくつかの方法または別のものを追加できるようにする必要があります。これが何らかの形で長く長く醜い条件付きで追加されている場合は、動作する限り、それは問題ありません。
'list'を変数名として使用しないでください。組み込み型をマスキングしています。 –