• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Python リスト内の要素取り出しについて)

Pythonリスト内の要素取り出しについて

このQ&Aのポイント
  • Pythonのリスト内の要素を取り出す方法について初心者の質問です。
  • 手の選択肢をリストで表現し、選択された手を取得する際にインデックスを使用しています。
  • リストのインデックスは0から始まるため、グーが0、チョキが1、パーが2に対応しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • Proof4
  • ベストアンサー率78% (151/192)
回答No.2

No.1の補足コメントに対して回答します。 質問文の添付画像で、1行目から6行目にある、def print_handで始まるコードは「関数」と呼ばれ、ある決まった処理(ここではじゃんけんの手を出力する処理)をまとめる役割をしています。関数は呼び出されるまでその内部の処理を実行することはありません。 def print_hand(hand, name='ゲスト')の()内のhandやnameは「引数(ひきすう)」と呼ばれ、関数を呼び出すときに関数内部で使用する変数の値をセットすることができます。 print_hand関数の呼び出しは18行目と21行目で行われています。21行目のprint_hand(player_hand, player_name)のコードは、print_hand関数の引数をそれぞれ hand = player_hand name = player_name として呼び出しています。 player_handの値は14行目、player_nameの値は9行目で入力されています。 18行目の呼び出しでは、引数が一つだけしか指定されていません。これは、関数を宣言するときのdef print_handの記述で、name='ゲスト'のように=を用いて宣言された引数は、呼び出す際に省略することができるためです。この場合、引数nameを省略するとnameは'ゲスト'となります。

tempetech_mi
質問者

お礼

なるほど……まだ完全に理解したわけではありませんが、かなり理解できました。 ご丁寧な回答ありがとうございました!

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Proof4
  • ベストアンサー率78% (151/192)
回答No.1

リストやタプルの要素は、その要素が「n番目」にあることを指定して取り出します。 なお、「n番目」のnは0から開始する整数です。 例えば、今回のhandsリストでは、 hands[0] = グー hands[1] = チョキ hands[2] = パー となります。 この、[]で囲まれた数字を表しているのが変数「hand」です。 「hand」には0,1,2いずれかの数値が入力されるため、hands[hand]で要素を取り出すことができます。

tempetech_mi
質問者

補足

変数handが機能するためには、「hand=」の形で変数に何が代入されるのかを事前に書いておく必要があるのではないでしょうか???。。。 それとも、1行目の def print_hand(hand, name) という式? によって、すでにhandが変数として定義されている(つまり、リストの0,1,2に対応するようになっている)ということなのでしょうか? 要領を得ずすみません。。。

すると、全ての回答が全文表示されます。