特集PC技術

Pythonを学ぼう

 

第15回 辞書の操作


1.辞書の読み込み

次の構文を使用すると、指定したキーに対応する値を読み込むことができます。

辞書[キー]


使用方法は次のプログラムを見てください。

# coding: utf-8

# 辞書の読み込み
dic = {'a':1, 'b':2, 'c':3}
print(dic['a'])
print(dic['b'])
print(dic['c'])
# 存在しないキーを指定するとエラーになる
print(dic['d'])

実行結果

1
2
3
Traceback (most recent call last):

KeyError: 'd'

2.辞書の更新

指定したキーに対応する値を変更

次の構文を使用すると、指定したキーに対応する値を変更できます。

辞書[キー] = 値


使用方法は次のプログラムを見てください。

# coding: utf-8

dic = {'a':1, 'b':2}
print(dic)
# キー'b'に対応する値を10に変更する
dic['b'] = 10
print(dic)

実行結果

{'a': 1, 'b': 2}
{'a': 1, 'b': 10}

2つの辞書を結合する

次の構文を使用すると、2つの辞書を結合できます。

.update(辞書)


使用方法は次のプログラムを見てください。

# coding: utf-8

dic1 = {'a':1, 'b':2}
dic2 = {'a':3, 'c':4}
print(dic1)
# 辞書dic1に辞書dic2の内容を追加します。
dic1.update(dic2)
print(dic1)

実行結果

{'a': 1, 'b': 2}
{'a': 3, 'c': 4, 'b': 2}

既に存在しているキー'a'は新しい値に置き換えられます。

3.辞書の削除

次の構文を使用すると、指定したキーに対応する値を削除できます。

del 辞書[キー]


使用方法は次のプログラムを見てください。

# coding: utf-8

dic = {'a':1, 'b':2, 'c':3}
print(dic)
# キー'b'を削除する
del dic['b']
print(dic)

実行結果

{'a': 1, 'c': 3, 'b': 2}
{'a': 1, 'c': 3}

4.その他の辞書の操作

他にさまざまな辞書の操作があります。
その一例として、次の構文があります。

len(辞書)
.keys()
.values()
.items()
キー in 辞書


使用方法は次のプログラムを見てください。

# coding: utf-8

dic = {'a':1, 'b':2, 'c':3}

# 辞書の長さを調べる
print(len(dic))

# 辞書のキーのリストを取得する
print(dic.keys())

# 辞書の値のリストを取得する
print(dic.values())

# 辞書のキーと値のペアのリストを取得する
print(dic.items())

# 指定のキーが含まれているか調べる
print('b' in dic)
print('d' in dic)

実行結果

3
['a', 'c', 'b']
[1, 3, 2]
[('a', 1), ('c', 3), ('b', 2)]
True
False

5.Javaとの比較

Javaのソースコードとの比較をします。
Pythonの辞書の機能は、Javaでは、java.util.HashMapクラスに似ているため、
このクラスとの比較をします。
Javaを知っている方は参考にしてください。

Python Java
# coding: utf-8

dic = {'a':1, 'b':2, 'c':3}

# 辞書の読み込み
print(dic['a'])

# 辞書の更新
dic.update({'d':4})
print(dic)

# 辞書の削除
del dic['d']
print(dic)
import java.util.HashMap;
public class Java15 {
    public static void main(String[] args) {
        // マップ("a"と1, "b"と2, "c"と3)を作成
        HashMap dic = new HashMap();
        dic.put("a", new Integer(1));
        dic.put("b", new Integer(2));
        dic.put("c", new Integer(3));

        // 辞書の読み込み
        System.out.println(dic.get("a"));

        // 辞書の更新
        dic.put("d", new Integer(4));
        System.out.println(dic);

        // 辞書の削除
        dic.remove("d");
        System.out.println(dic);
    }
}

コメントの投稿


画像の中に見える文字を入力してください。

トラックバックURL

http://www.isl.ne.jp/cgi-bin/mt/mt-tb.cgi/1762

サイト内検索

twitterTwitter

最新ブログ記事

2015年06月13日

JavaScriptの情報室

4冊目 ハイブリッドアプリが作れる。tabris.js

2014年10月16日

C++言語学習録

第3回 ファイルを分割してみよう

2014年10月09日

C++言語学習録

第2回 オブジェクト指向の復習

2014年10月02日

C++言語学習録

第1回 C++の開発環境を整える

2014年09月25日

Swiftを試してみようなう。

第4回 Swiftでクラスを使うなう。

ISL 情報戦略研究所

pagetopこのページの先頭へ戻る