私が設計しているゲームでは、「すべてをピックアップ」して「すべてを落とす」作業をしています。プレイヤーには在庫(在庫)があり、各部屋にはその中に何が入っているかを追跡するための独自のものがあります。それが特定のアイテムである場合、それぞれのリストからアイテムを簡単に追加または削除できますが、それがすべてのためのものである場合は、どのように進むべきかわかりません。 (注:これは、プレイヤーが取るように変化し、アイテムをドロップしますように私は在庫にあるアイテムの数を知ることができません)For Loop別のリストから追加する
ROOMNAMEinventory = ['lamp', 'coin']
inventory = ['string']
do = raw_input("What would you like to do?").upper()
if(do == 'drop all'):
for items in ROOMNAMEinventory:
inventory.append(items)
ROOMNAMEinventory.remove(items)
print inventory
print ROOMNAMEinventory
は現在、これはプリントアウト:
['string', 'lamp']
['coin']
None
なぜそれが印刷んなし?ここ
を、このための百万個の重複がなければなりません反復するリストを変更しないでください。 – polku
コードでは、観測された出力を生成することはできません。 'None'を生成する第3の' print'文はなく、 'do'は' str.upper() 'の戻り値である小文字を含まないので、' drop all''と決して等しくありません。 – chepner
この特定の例では、リストの 'extend'と' clear'メソッドを使用して、同じものを実行することができます。 – Copperfield