Pythonの独特な機能として「タプル」というのがある。
簡単に説明してみます。
タプル
dotinstall
「#10 タプルを使ってみよう」
メモ
リストと同じだが、登録後は変更が出来ない。
リストは[**,**]という記述だが、タプルは(**,**)という記述で行う。
リストで使える命令は同じように使用できる。
変更できないメリットは、「計算処理が早くなる」「変更不可要素により堅牢なシステム構築ができる」という点がある。
タプルとリストの相互変換
a = (2 , 3 , 5)
b = list(a)
print b
c = tuple(b)
print c
# 実行
[2 , 3 , 5]
(2 , 3 , 5)
セット
dotinstall
「#11 セットを使ってみよう」
メモ
集合体。
重複を許さないリストのようなもの。
a = set([2 , 3 , 5 , 2 , 3])
print a
# 実行
set([2 , 3 , 5])
集合演算
「-」差集合
aにあってbに無いモノを求める。
a = set([1 , 2 , 5])
b = set([3 , 4 , 5])
print a - b
# 実行
set([1 , 2])
「|」和集合
aとbを集約
a = set([1 , 2 , 5])
b = set([3 , 4 , 5])
print a | b
# 実行
set([1 , 2 , 3 , 4 , 5])
「&」積集合
aとbの重複した値を抜き出す
a = set([1 , 2 , 5])
b = set([3 , 4 , 5])
print a & b
# 実行
set([5])
「^」重複排除
aとbのどちらか片方にしか無いものを抽出(重複している値を抜かす)
a = set([1 , 2 , 5])
b = set([3 , 4 , 5])
print a ^ b
# 実行
set([1 , 2 , 3 , 4])
辞書
dotinstall
「#12 辞書を使ってみよう」
メモ
keyとvalueがペアになったもの(連想配列のようなもの)
基本的な使い方
JSONのような書き方で登録できるが、結果は登録順ではないところがポイント・・・なんでだろ?
a = {"b":100 , "a":200 , "c":500}
print a
# 実行
{'a': 200, 'c': 500, 'b': 100}
個別に値を取り出す
これもJSONっぽい書き方なのでさほど難しくはない。
a = {"b":100 , "a":200 , "c":500}
print a["c"]
# 実行
500
「in」存在チェック
辞書内にkeyがセットされているかのチェックができる。
a = {"b":100 , "a":200 , "c":500}
print "b" in a
print "d" in a
# 実行
True
False
一覧の取得
keys : keyの一覧の取得
a = {"b":100 , "a":200 , "c":500}
print a.keys
# 実行
["a" , "c" , "b"]
values :valueの一覧の取得
a = {"b":100 , "a":200 , "c":500}
print a.values
# 実行
[200 , 500 , 100]
items : keyとvalueの一覧の取得
a = {"b":100 , "a":200 , "c":500}
print a.items
# 実行
[("a",200) , ("c",500) , ("b":100)]
0 件のコメント:
コメントを投稿