设为首页 加入收藏

TOP

python学习笔记:字典(二)
2017-12-07 14:22:53 】 浏览:413
Tags:python 学习 笔记 字典
5 'phil' : 'python', 6 } 7 friends = ['phil','sara'] 8 for name in favourite_languages.keys(): 9 print(name.title()) 10 11 if name in friends: 12 print(" Hi " + name.title() + 13 ",I see your favourite language is " + 14 favourite_languages[name].title() + "!") 15 #方法keys()不仅可以用于遍历,其返回值是一个列表包含所有的键的内容 16 #运行结果为: 17 Sara 18 Hi Sara,I see your favourite language is C! 19 Jen 20 Phil 21 Hi Phil,I see your favourite language is Python! 22 Edward

 

 

 按顺序遍历字典中的值:

 可以事先对字典中的键进行排序,然后按照新的顺序遍历字典:

 1 favourite_languages = {
 2     'jen' : 'python',
 3     'sara' : 'C',
 4     'edward' : 'ruby',
 5     'phil' : 'python',
 6     }
 7 for name in sorted(favourite_languages.keys()):     #对字典中的键按字母顺序排序
 8     print(name.title() + ", thank you for taking this poll.")
 9 #运行结果:
10 Edward, thank you for taking this poll.
11 Jen, thank you for taking this poll.
12 Phil, thank you for taking this poll.
13 Sara, thank you for taking this poll.

 

 

 遍历字典中的所有值,使用.value()可以只访问字典里的值

 1 favourite_languages = {
 2     'jen' : 'python',
 3     'sara' : 'C',
 4     'edward' : 'ruby',
 5     'phil' : 'python',
 6     }
 7 print("The following languages have been mention:")
 8 for language in favourite_languages.values():
 9     print(language.title(),end = ",")       #end 可以控制打印的格式,默认是end = "\n",表示换行
10 #运行结果:
11 The following languages have been mention:
12 Python,Python,C,Ruby,

 

 

嵌套:
有时候需要将一系列列表储存在列表中,将列表储存在字典中,称为嵌套,例如:
 1 alien_0 = {'color':'green','point':5}
 2 alien_1 = {'color':'red','point':10}
 3 alien_2 = {'color':'blue','point':25}
 4 aliens = [alien_0,alien_1,alien_2]
 5 for alien in aliens:
 6     print(alien)
 7 #运行结果为:
 8 {'point': 5, 'color': 'green'}
 9 {'point': 10, 'color': 'red'}
10 {'point': 25, 'color': 'blue'}

 

 

现实情况中alien肯定远远不止3个,所以可以使用range()生成更多的外星人

 

 

 1 aliens = []
 2 for alien_number in range(30):      #循环30次
 3     new_alien = {'color':'green','point':5,'speed':'slow'}
 4     aliens.append(new_alien)
 5 for alien in aliens[:5]:
 6     print(alien)        #d打印前五个字典
 7 print("...")            #之后的省略
 8 print("total number of aliens:"+str(len(aliens)))
 9 #运行结果:
10 {'point': 5, 'speed': 'slow', 'color': 'green'}
11 {'point': 5, 'speed': 'slow', 'color': 'green'}
12 {'point': 5, 'speed': 'slow', 'color': 'green'}
13 {'point': 5, 'speed': 'slow', 'color': 'green'}
14 {'point': 5, 'speed': 'slow', 'color': 'green'}
15 ...
16 total number of aliens:30
这些alien都有相同的特征,这个里面的所有的alien对于python来说都是独立的,所以可以独立地对上面的字典进行修改

 

 

可以使用for 和 if来修改某些外星人的颜色:
 1 aliens = []
 2 for alien_number in range(30):      #循环30次
 3     new_alien = {'color':'green','point':5,'speed':'slow'}
 4     aliens.append(new_alien)
 5 
 6 for alien in aliens[0:3]:
 7     if alien['color'] == 'green':
 8         alien['color'] = 'yello'
 9         alien['point'] = 10
10         alien['speed'] = 'medium'       #修改前三个alien的信息
11 for alien in aliens[:5]:
12     print(alien)
13 #运行结果为:
14 {'color': 'yello', 'speed': 'medium', 'point': 10}
15 {'color': 'yello', 'speed': 'medium', 'point': 10}
16 {'color': 'yello', 'speed': 'medium', 'point': 10}
17 {'color': 'green', 'speed': 'slow', 'point': 5}
18 {'color': 'green', 'speed': 'slow', 'point': 5}
#在代码中可以使用if-elif-else:语句来实现对不同特征的alien的信息的修改
#经常在列表中包含大量的字典,其中每个字典都包含特定对象的众多信息
 
在字典中储存列表,
有时候我们需要在字典中储存列表而不是在列表中储存字典,例如如何描述顾客的披萨;
如果使用列表,只能储存要添加的披萨配料;如果使用字典则可以将其他信息包含在其中
 
 
pi
首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇matplotlib基本用法-【老鱼学matp.. 下一篇QQ空间Python爬虫v2.0--点赞数据..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目