1. 程式人生 > >Python學習入門之字典

Python學習入門之字典

Python學習入門之字典

在python中字典是一系列的鍵值對,能將相關資訊關聯起來,跟C/C++中的結構體類似。每一個鍵都與一個值相關聯,可以使用鍵來訪問與之相關聯的值,與鍵相關聯的值可以是字串,數字,列表乃至是字典,任何Python中的物件都可用作字典中的值,鍵與值之間用冒號分閣,而鍵與值之間用逗號分隔。
一個簡單的字典示例

alien_0 = {
    'color': "green",
    'points': 5,
    }
print(alien_0)

訪問字典中的值

可依次指定字典名和放在方括號內的鍵

print(alien_0['color'])
print(alien_0['points'])

新增鍵-值對

可依次指定字典名、用方括號括起的鍵和相關的值

alien_0['x_position'] = 0
alien_0['y_position'] = 25
print(alien_0)

修改字典中的值

可依次指定字典名,用方括號括起的鍵以及與該鍵相關聯的新值

print("The alien is " + alien_0['color'] + ".")
alien_0['color'] = "yellow"
print("The alien is " + alien_0['color'] + " now.")

刪除鍵—值對

使用del語句將相應的鍵—值對徹底刪除,必須指定字典名和要刪除的鍵

del alien_0['points']
print(alien_0)

遍歷字典

遍歷所有鍵-值對,items函式返回一個鍵-值對列表

user_0 = {
    'username': "efermi",
    'first': "enrico",
    'last': "fermi",
    }

for key,value in user_0.items():
    print("\nKey: " + key)
    print("value: " + value)

遍歷字典中的所有鍵,keys函式以列表返回一個字典所有的鍵

for key in user_0.keys():
    print("dictionary key:" + key + "\n")

遍歷字典中的所有值,values函式以列表返回一個字典所有的值

for value in user_0.values():
    print("dictionary value:" + value + "\n")

巢狀

字典列表

alien_1 = {'color': "yellow",'points': 10}
alien_2 = {'color': "yellow",'points': 15}

alien = [alien_0,alien_1,alien_2]
print(alien)

批量生成字典列表

alien = []
for alien_num in range(10):
    new_alien = {'color': "yellow",'points':alien_num*5}
    alien.append(new_alien)
print(alien)

在字典中儲存列表

  pizza = {
        'crust': "thick",
        'toppings': ["mushrooms","extra cheese"]
    }

    print("you ordered a " + pizza['crust'] + "-crust pizza with the following toppings:")
    
    for topping in pizza['toppings']:
        print("\t" + topping)

在字典裡儲存字典

users = {
    'fz': {
         'first': "feng",
         'last': "zhao",
         'location':'chinese',
        },
    'zr':{
        'first': "zeng",
        'last': "rong",
        'location': "chinese",
        },
    }
for username, user_info in users.items():
    print("\nUsername: " + username)
    full_name=user_info['first']  + " " + user_info['last']
    print("Full name : " + full_name)
    print("Location : " + user_info['location'])