読者です 読者をやめる 読者になる 読者になる

サイエンティストとマーケターのはざま

Pythonとか広告とかデータ分析とかとか


Pythonチュートリアル③-ディクショナリ

引き続き。

今回はディクショナリについて。

Pythonチュートリアル 第2版

Pythonチュートリアル 第2版

  • 作者: Guido van Rossum,鴨澤眞夫
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2010/02/22
  • メディア: 単行本(ソフトカバー)
  • 購入: 4人 クリック: 136回
  • この商品を含むブログ (23件) を見る
 

 上記はこちらのページを書籍化したものです。

 

ディクショナリは値をなんらかのキーと共に格納し、キー指定で値を引き出すデータ型です。

具体的な例をみてみましょう。

>>>tel={'jack':4098, 'sape':4139}

>>>tel['guido']=4127

>>>tel

{'guido': 4127, 'jack': 4098, 'sape': 4139}

 

キーからなるリストを返します。

>>>list(tel.keys())

['sape', 'jack', 'guido']

>>>sorted(tel.keys())

['guido', 'jack', 'sape']

 

キーの存在チェック

>>>'guido' in tel

True

 

dict()コンストラクタを使用すると、「キー:値」ペアのタプルからなるシーケンスからディクショナリを構築します。

>>>dict([('sape',4139),('guido',4127),('jack',4098)])

{'guido': 4127, 'jack': 4098, 'sape': 4139}

>>>dict(sape=4139, guido=4127, jack=4098)

{'guido': 4127, 'jack': 4098, 'sape': 4139}

 

itemメソッドを使うことで、キーと値を同時に取得できます。

>>>knights = {'gallahad':'the pure', 'robin':'the brave'}

>>>for k, v in knights.items():
...   print k, v 

gallahad the pure
robin the brave

 

enumerate()関数を使うと、位置インデックスおよび対応した値を同時に得られます。

>>>for i, v in enumerate(['tic', 'tac','toe']):
...   print i,v

0 tic
1 tac
2 toe