2016-10-25 6 views
-2

私はPythonの自動化を読んでいて、The Multiple Assignment Trickについて読んでいたので、私はそれを端末で試してみることにしました。空のリストを作り、それを使って更新しようとしましたが、リストをもう一度印刷しても少なくともそれは機能しません。複数の割り当てトリックを試しても、Python端末では動作しませんか?

>>>> cat = ['fat', 'orange', 'loud'] 
>>>> print(cat) 
>>>> ['fat', 'orange', 'loud'] 
>>>> size, color, disposition = cat 
>>>> print(cat) 
>>>> ['fat', 'orange', 'loud'] 

この時点では、私は4行目が 'cat'というリストの値を更新すると思っていましたが、印刷してもそれはありません。私はNameError: name orange is not defined取得「猫オレンジ」を入力した場合、私は

>>>> size in cat 
True 

を入力すると、私は新しいリストをプリントアウトするとき、私は更新された値が表示されないのはなぜ何らかの理由があるのでしょうか?

+0

このコードでは達成すべきことは何だと思いますか? – TigerhawkT3

+0

いずれにしても、「トリック」を試す前に、(公式のPythonチュートリアル(https://docs.python.org/3.5/tutorial/index.html)のような)チュートリアルを注意深く見直さなければならないと感じています。 – TigerhawkT3

+1

オレンジをどこで定義しましたか?また、あなたのスニペットの中の何がリストの内容を変更するのでしょうか? –

答えて

0

orange in catを入力すると、orangeは変数ではないため、NameErrorとなります。あなたは実行する必要があります。

'orange' in cat # check as string 

OR

color in cat # check with variable storing 'orange' 

color変数は、オレンジ色の値を格納しているため。 (あなたの質問に sizeを使っているのと同じように)

+1

私の友人に感謝して、私の脳はなぜそんなに悪いのか分からなかった。私は文字列と変数が混在しているとは信じられません。もう一度ありがとう! – greyjoy9025

関連する問題