[Python] 高速勉強 #5「配列処理・タプルとセットと辞書」

2016年8月14日

Python テクノロジー プログラミング 学習 特集

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)]

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。