第6章 字典

2021-04-06  本文已影响0人  lkj666

参考书籍:《Python编程 从入门到实践》

1. 字典的定义和访问

alien_0 = {
    'color': 'green', 
    'point': '5'
    }
print(alien_0['color'])

{}定义字典,通过访问键名来访问值




2. 变动字典

2.1 创建字典

方式一:利用定义直接创建
方式二:
aline_0 = {}

alien_0['color'] = 'green'
alien_0['points'] = '5'

2.2 添加键值对

aline_0 = {'color': 'green', 'points': 5}
aline_0['x_position'] = 0

字典是一种动态结构,可以随时在其中添加键-值对

2.3 删除键值对

aline_0 = {'color': 'green', 'points': 5}
del alien_0['color']

del语句删除

2.4 修改键值对

aline_0 = {'color': 'green'}
aline_0 =['color'] = 'yellow'



3. 遍历字典

3.1 遍历所有的键-值对

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

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

3.2 遍历所有的键

favorit_languages = {
    'jen': 'python',
    'sarah': 'c',
    'edward': 'ruby',
    'phil': 'python',
    }

for name in sorted(favorite_languages.keys()):
    print(name.title() + ", thank you for taking the poll.")
  1. 方法keys()遍历键名之后,存储为了一个列表。
  2. 函数sorted()可以用来获得按特定顺序排列的键列表。

3.2 遍历所有的值

favorit_languages = {
    'jen': 'python',
    'sarah': 'c',
    'edward': 'ruby',
    'phil': 'python',
    }

for langugein set(favorite_languages.values()):
    print(language.title())

方法values用于遍历字典中的值
集合set()用于去除值中的重复值并输出




4. 嵌套

4.1 字典列表

#定义一个空列表
aliens = []
#创建30个绿色的外星人
for alien_number in range(30):
    new_aline = {'color':'green', 'points':'5', 'speed':'slow'}
    aliens.append(new_aline)
#修改前三个绿色外星人的属性
for alien in aliens[:3]:
    if alien['color'] == 'green':
        alien['color'] = 'yellow'
        alien['speed'] = 'medium'
        alien['points'] = 10
#显示前五个外星人
for alien in alien[0:5]:
    print(alien)
#显示创建了多少个外星人
print("Total number of aliens: " + str(len(aliens)))

4.2 字典中存储列表

favorite_languages = {
    'jen':['python', 'ruby'],
    'sarah':['c'],
    'edward':['ruby', 'go'],
    'phil':['python', 'haskell'],
    }

for name, languages in favorite_languages.items():
    if len(languages) == 2:
        print("\n" + name.title() + "'s favorite languages are: ")
        for language in languages:
            print("\t" + language.title())
    else:
        print(name + "'s favorite language is " + languages)

4.3 字典中存储字典

上一篇下一篇

猜你喜欢

热点阅读