Pythonの基礎 for編
- Cと違うのは、リストやレンジを指定すること
- また、forの最後にelseを使うことで、最後だけの処理を指定することもできる
リストを使ったfor
#coding:utf-8 sum = 0 for i in [1, 3, 5, 7, 11]: print i sum += i else: print sum #リストを全部出力したらここに来る。
#実行結果 1 3 5 7 11 27
レンジを使った場合
#coding:utf-8 sum = 0 for i in range(10): #言うまでもなく、0から9まで print i sum += i else: print sum
#実行結果 0 1 2 3 4 5 6 7 8 9 45
continueを使うことができる
#coding:utf-8 for i in range(10): if i == 3: continue #3のときは何もせずに続行する print i else: print "end"
#実行結果 0 1 2 4 5 6 7 8 9 end
breakも使える
#coding:utf-8 for i in range(10) if i == 3: break #3がきたらforの処理終了 print i else: print "end"
#実行結果 0 1 2 #当然、endは表示されないことに注意
辞書型を使う場合
#このような辞書を用意しておく a = {"John":200. "Paul":300, "Mick":500}
キーと値の両方を取り出すやり方
for k, v in a.iteritems(): print "key: %s value: %d" % (k, v)
#実行結果 key:Paul value:300 key:John value:200 key:Mick value:500
キーだけをとりだすやり方
for k in a.iterkeys(): print k
#実行結果 Paul John Mick
値を取り出すやり方
for v in a.itervalues(): print v
#実行結果 300 200 500
辞書型は、例えばWebAPIにアクセスしてJSONでデータを貰ったときの解析や表示に使える。
これはかならず押さえておくこと。
ちょっと疑問が。。。。辞書型の場合、forでの順番ってどうなるんだろう。
これは後で調べてから書きます。
- 作者: Mark Lutz,夏目大
- 出版社/メーカー: オライリージャパン
- 発売日: 2009/02/26
- メディア: 大型本
- 購入: 12人 クリック: 423回
- この商品を含むブログ (133件) を見る