Pythonでlist型をint型に変換して計算をしたい

質問者さんがどんなふうにしてPythonを勉強しておられるのかわからないので、信頼のおけそうな初心者向け教材を使って説明します。

内容は後で全文をご自分で読んでいただくとして、ここでは次のような例に注目します。

次の例は、4つの整数のリスト [1, 2, 3, 4] から要素を一つずつ取り出し、それぞれの値の二乗を出力します。

values = [1, 2, 3, 4] for value in values: print("valueは", value, "value*valueは", value*value)
valueは 1 value*valueは 1 valueは 2 value*valueは 4 valueは 3 value*valueは 9 valueは 4 value*valueは 16

for 文は、変数 values のリストオブジェクトから要素を一つずつ取り出し、それぞれの値ごとに次の行の print(...) を一度ずつ実行しています。

この例では、「リストオブジェクトから要素を一つずつ取り出し」ていると説明があります。それぞれの値が入る変数の名前はわかりますか。例を見ながら考えてみてください。十分に考えたら、続きを読んでください。


この例では、リストが入っている変数はvaluesです。しかし、それぞれの値を出力するときに使っている変数はvalueです。

つまり、

for value in values: ...

という構文は、「valuesというリストの要素をひとつずつ取り出してvalueに入れながら、処理を繰り返す」ということを表します。

このことを質問者さんの書いたコードに当てはめてみると、どこで間違ったかがわかるのではないでしょうか。

コメントを投稿

0 コメント