Kamus Python

字典(Dictionary)

字典是一个无序、可变和有索引的集合。在 Python 中,字典用花括号编写,拥有键和值。

实例

创建并打印字典:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
print(thisdict)

Jalankan Contoh

访问项目

您可以通过在方括号内引用其键名来访问字典的项目:

实例

获取 "model" 键的值:

x = thisdict["model"]

Jalankan Contoh

还有一个名为 get() 的方法会给你相同的结果:

实例

获取 "model" 键的值:

x = thisdict.get("model")

Jalankan Contoh

更改值

您可以通过引用其键名来更改特定项的值:

实例

把 "year" 改为 2019:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict["year"] = 2019

Jalankan Contoh

遍历字典

您可以使用 for 循环遍历字典。

循环遍历字典时,返回值是字典的键,但也有返回值的方法。

实例

逐个打印字典中的所有键名:

for x in thisdict:
  print(x)

Jalankan Contoh

实例

逐个打印字典中的所有值:

for x in thisdict:
  print(thisdict[x])

Jalankan Contoh

实例

您还可以使用 values() 函数返回字典的值:

for x in thisdict.values():
  print(x)

Jalankan Contoh

实例

通过使用 items() 函数遍历键和值:

for x, y in thisdict.items():
  print(x, y)

Jalankan Contoh

检查键是否存在

要确定字典中是否存在指定的键,请使用 in 关键字:

实例

检查字典中是否存在 "model":

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
if "model" in thisdict:
  print("Yes, 'model' is one of the keys in the thisdict dictionary")

Jalankan Contoh

字典长度

要确定字典有多少项目(键值对),请使用 len() 方法。

实例

打印字典中的项目数:

print(len(thisdict))

Jalankan Contoh

添加项目

通过使用新的索引键并为其赋值,可以将项目添加到字典中:

实例

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict["color"] = "red"
print(thisdict)

Jalankan Contoh

删除项目

有几种方法可以从字典中删除项目:

实例

pop() 方法删除具有指定键名的项:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.pop("model")
print(thisdict)

Jalankan Contoh

实例

popitem() 方法删除最后插入的项目(在 3.7 之前的版本中,删除随机项目):

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.popitem()
print(thisdict)

Jalankan Contoh

实例

del Kata kunci menghapus item yang memiliki nama kunci spesifik:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
del thisdict["model"]
print(thisdict)

Jalankan Contoh

实例

del Kata kunci boleh menghapus kamus sepenuhnya:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
del thisdict
print(thisdict) #this  akan menyebabkan kesalahan, karena "thisdict" tidak ada lagi.

Jalankan Contoh

实例

clear() Kata kunci kosongkan kamus:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
thisdict.clear()
print(thisdict)

Jalankan Contoh

menyalin kamus

Anda tidak dapat menyalin kamus dengan cara dict2 = dict1 menyalin kamus, karena:dict2 hanya untuk dict1 referensi, sementara dict1 perubahan yang dijalankan akan otomatis di dict2 dalam.

Terdapat beberapa metode untuk menyalin, salah satunya adalah menggunakan metode kamus bawaan copy()

实例

Penggunaan copy() metode untuk menyalin:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
mydict = thisdict.copy()
print(mydict)

Jalankan Contoh

Salinan lain yang boleh digunakan adalah metode bawaan dict()

实例

Penggunaan dict() Metode membuat salinan kamus:

thisdict =	{
  "brand": "Porsche",
  "model": "911",
  "year": 1963
}
mydict = dict(thisdict)
print(mydict)

Jalankan Contoh

Kamus terdapat didalam kamus

Kamus boleh mengandung banyak kamus, ini disebut kamus yang terdapat didalam kamus.

实例

Buat kamus yang mengandung tiga kamus:

myfamily = {
  "child1" : {
    "name" : "Phoebe Adele",
    "year" : 2002
  },
  "child2" : {
    "name" : "Jennifer Katharine",
    "year" : 1996
  },
  "child3" : {
    "name" : "Rory John",
    "year" : 1999
  }
}

Jalankan Contoh

atau, jika anda ingin mengekatkan tiga kamus yang sudah ada sebagai kamus:

实例

Buat tiga kamus, lalu buat kamus yang mengandung tiga kamus lainnya:

child1 = {
  "name" : "Phoebe Adele",
  "year" : 2002
}
child2 = {
  "name" : "Jennifer Katharine",
  "year" : 1996
}
child3 = {
  "name" : "Rory John",
  "year" : 1999
}
myfamily = {
  "child1" : child1,
  "child2" : child2,
  "child3" : child3
}

Jalankan Contoh

Konstruktor dict()

boleh digunakan dict() Konstruktor membuat kamus baru:

实例

thisdict = dict(brand="Porsche", model="911", year=1963)
# Sila pastikan, kata kunci bukan adalan string
# Sila pastikan, penggunaan titik semicolon bukannya tanda hubung untuk asosiasi
print(thisdict)

Jalankan Contoh

Cara Kamus

Python menyediakan sekumpulan cara binaan yang dapat digunakan di kamus.

Cara Penerangan
clear() Buang semua elemen dalam kamus
copy() Kembalikan salinan kamus
fromkeys() Kembalikan kamus yang memiliki kunci dan nilai yang dinyatakan
get() Kembalikan nilai kunci yang dinyatakan
items() Kembalikan senarai tupel untuk setiap pasangan kunci nilai
keys() Kembalikan senarai kunci kamus
pop() Buang elemen yang memiliki kunci yang dinyatakan
popitem() Buang pasangan kunci nilai yang dimasukkan terakhir
setdefault() Kembalikan nilai kunci yang dinyatakan. Jika kunci ini tidak wujud, masukkan kunci dengan nilai yang dinyatakan.
update() Kemaskini kamus dengan pasangan kunci nilai yang dinyatakan
values() Kembalikan senarai nilai dalam kamus