特有の型とシンタックス
三日目で燃え尽きたりして。
タプル
Pythonにも、この言語ならではの型があります。
もっともよく使うものとしては、タプルがあげられます。
タプルとはIndexer付きのデータ格納形式です。ただ、配列と異なるのは、Pythonのシンタックスと組み合わせることで面白い使い方ができる点。それのサンプルコードが下記のような感じです。
tapule_data = (1, 2, 3) first, second, third = tapuble
datas = [(1,2), (3,4), (5,6)] for key, value in datas: print key, value # 12 # 34 # 56
上記のように、タプル型は変数に代入するときに、左辺をカンマで区切って複数指定することでタプル内のデータを異なる変数にまとめて代入できます。利用例として、関数を作ったが戻り値が複数あるけど、クラスを作るほどじゃないな。。。というときに大活躍です。また、うえのサンプルのように key, valueなんてペアを配列で管理するのもありがちですが、Pythonのfor文の仕様もあって、スマートにループ文を書くことができます。
スマートさには欠けますが、下記のような書き方もできます。
datas = [(1,2), (3,4), (5,6)] for data in datas: print data[0],data[1] # 12 # 34 # 56
どうしてもIndexerを使ってアクセスしたいときは、このサンプルのような書き方もできます。
若干、脇道に逸れますが、Pythonのfor文には、例のセミコロンがありません。言語仕様としてサポートしていないので使うことはできません。その代わり、rangeという関数が用意されています。使い方はこう。
for i in range(10): print i
これを実行すると 0から 9までの数値が出力されます。for文くらい他の言語で使える形式をサポートしろよ、って感じですが、できないものは仕方がないので、range関数を使ってください。