6-1. 集合型
Pythonでは、波括弧{ }で囲んだコンマ区切りの要素の並び(例えば、{1, 2, 3, 4, 5}、{"a", "b", "c", "d", "e"}など)を集合型(集合)として取り扱います。集合の型はset型になります.なお、集合は重複を持たない、要素の集まり(数値の場合は昇順にソートされ、文字列の場合はソートされない)である点に注意してください。
▼プログラミングセル6-1.
a={5, 2, 4, 1, 3, 2, 3}
print(a)
print(type(a))
b={"5", "2", "4", "1", "3", "2", "3"}
print(b)
6-2. 演算子による集合の操作
集合では、和、積、差、対象差といった数学的な演算が可能です。
演算子 | メソッド関数 | 機能 |
| | .union(x) | 和 |
& | .intersection(x) | 積 |
- | .difference(x) | 差 |
^ | .symmetric_difference(x) | 対称差 |
a={0, 1, 2, 3}
b={2, 3, 4, 5}
print(a|b)
print(a.union(b))
a={0, 1, 2, 3}
b={2, 3, 4, 5}
print(a&b)
print(a.intersection(b))
a={0, 1, 2, 3}
b={2, 3, 4, 5}
print(a-b)
print(a.difference(b))
▼プログラミングセル6-2.
a={0, 1, 2, 3}
b={2, 3, 4, 5}
print(a^b)
print(a.symmetric_difference(b))
6-3. 辞書型
Pythonでは、波括弧{ }で囲んだコンマ区切りのキーと値の2つを1組とした要素の並び(例えば、{"a":1, "b":2, "c":3}, {1:"a", 2:("b", "c"), ("d", "e"):3}など)を辞書型(辞書)として取り扱います。辞書の型はdict型になります.なお、辞書のキーには、文字列や数値、タプルなどの不変データが指定できます。逆に、リストや辞書などの可変データはキーに指定できません。値については、可変や不変に関わらず色々な種類のデータを指定できます。
▼プログラミングセル6-3.
a={"a":1, "b":2, "c":3}
print(a)
print(type(a))
b={1:"a", 2:("b", "c"), ("d", "e"):3}
print(b)
6-4. キーによる辞書の値の取得
辞書ではキー([キー名称]という添字)を使って辞書の値を取得することができます。
a={"a":1, "b":2, "c":3}
print(a["a"])
a={1:"a", 2:("b", "c"), ("d", "e"):3}
print(a[2])
print(a[("d","e")])
▼プログラミングセル6-4.
a={"a":1, "b":2, "c":3}
print(a[0]) #エラー
6-5. 辞書の可変性
辞書の値は変更することができます。キーを指定して値を代入できます。またdel関数でキーと要素のペアを削除できます。辞書にないキーを指定して値を代入すると、そのキーと値のペアを新しく辞書に追加することができます。
▼プログラミングセル6-5.
a={"a":1, "b":2, "c":3}
print(a)
a["a"]=4 #キー"a"の値を4に変更
print(a)
del(a["b"]) #キー"b"のキーと値を削除
print(a)
a["d"]=5 #新しいペア(キー"d"、値5)を辞書に追加
print(a)
問題
以下の問題に解答しましょう。
key | value |
---|---|
山田 | 90 |
田中 | 85 |
鈴木 | 100 |
key | id | name | score |
---|---|---|---|
データ1 | 1001 | 山田 | 90 |
データ2 | 1002 | 田中 | 85 |
データ3 | 1003 | 鈴木 | 100 |