02. データ構造¶
このページでは、複数の値をまとめて扱うための基本を見ます。
list: 複数の値を順番に並べるdict: 名前をつけて値を持つ
リスト¶
リストの基本¶
リストは、複数の値を順番に持つための型です。
[] で囲みます。
scores = [80, 65, 90]
print(scores)
print(type(scores))
リストの中の値は、左から順番に番号で取り出せます。プログラミング言語の番号は大抵 0 から始まるので注意しましょう。
scores = [80, 65, 90]
print(f"1番目の点数: {scores[0]}")
print(f"2番目の点数: {scores[1]}")
print(f"3番目の点数: {scores[2]}")
リストの長さ¶
リストに値がいくつ入っているかは len() で確認できます。
scores = [80, 65, 90]
print(f"データ数: {len(scores)}")
合計は sum() で計算できます。
scores = [80, 65, 90]
total = sum(scores)
average = total / len(scores)
print(f"合計: {total}")
print(f"平均: {average}")
リストに値を追加する¶
リストに値を追加するときは append() を使います。
scores = [80, 65, 90]
scores.append(70)
print(scores)
print(f"データ数: {len(scores)}")
append() は、リストの最後に値を1つ追加します。
リストは、値の順番に意味があるときに便利です。
辞書¶
辞書の基本¶
辞書は、キーと値の組み合わせでデータを持つ型です。
下の例では math がキーで、80 が値です。
sample = {
"math": 80,
"english": 72,
"label": 1,
}
print(sample)
print(type(sample))
値を取り出すときは、キーを指定します。
sample = {
"math": 80,
"english": 72,
"label": 1,
}
print(f"math: {sample['math']}")
print(f"english: {sample['english']}")
print(f"label: {sample['label']}")
キーと値を見る¶
辞書にどんなキーがあるかは keys()、どんな値があるかは values() で確認できます。
sample = {
"math": 80,
"english": 72,
"label": 1,
}
print(sample.keys())
print(f"values: {sample.values()}")
辞書に値を追加する¶
辞書に新しい値を追加するときは、新しいキーを [] の中に書いて、値を入れます。
sample = {
"math": 80,
"english": 72,
}
sample["label"] = 1
print(sample)
すでにあるキーに値を入れると、その値が上書きされます。
sample = {
"math": 80,
"english": 72,
}
sample["math"] = 85
print(sample)
辞書のリスト¶
複数人のデータは、辞書をリストに入れると表のように扱えます。
samples = [
{"name": "Sato", "math": 80, "english": 72, "label": 1},
{"name": "Suzuki", "math": 55, "english": 68, "label": 0},
{"name": "Tanaka", "math": 90, "english": 86, "label": 1},
]
print(samples[0])
print(samples[1])
1件分のデータを取り出してから、キーを指定して値を取り出せます。
samples = [
{"name": "Sato", "math": 80, "english": 72, "label": 1},
{"name": "Suzuki", "math": 55, "english": 68, "label": 0},
{"name": "Tanaka", "math": 90, "english": 86, "label": 1},
]
first_sample = samples[0]
print(f"name: {first_sample['name']}")
print(f"math: {first_sample['math']}")
print(f"label: {first_sample['label']}")
次の章で扱う for を使うと、このような複数のデータを順番に処理できます。
このページのまとめ¶
listは複数の値を順番に持つ- リストの番号は
0から始まる len()でリストの長さを確認できるdictはキーと値の組み合わせで持つ- 辞書の値はキーを指定して取り出す
- 辞書のリストを使うと、表のようなデータを表せる