一、Python中列表与元组的区别:java
–列表:能够经过索引改变列表中的值,例如“list1[1]=‘XXXX’”python
–元组:没法经过索引改变某一个特定的值,例如“group1[1]=‘XXXX’”–error!
“group1=(‘X’,‘XXXX’,…)”–right!
title(),upper(),lower()是对列表的元素操做,不是对整个列表操做;
列表:[ ]
元组:()
二、字典:{ }字典中的键能够对应的是数字,字符串,列表乃至另一个字典
例如:alien={‘color_1’:‘green’,‘point_1’:5}
其中color_1和point_1为“键”,green和5为他们的值对
键-值对是两个相关联的值
在访问字典中的值时,相似于列表的索引,例如,想要打印alien的’color_1’的值对,能够用alien[‘color_1’]实现c++
三、能够随时向python的字典中添加键-值对,代码以下web
>>>aline['hanhan']='hanhan' >>>print(aline) {'color': 'green', 'point': 5, 'hanhan': 'hanhan'}在这里插入代码片
注意:键-值对的排列顺序和添加顺序不同,Python 只关心键和值对之间的关联关系编程
四、修改字典中的值,代码以下app
>>> color={'a':'green'} >>> print(color) {'a': 'green'} >>> color['a']='yellow' >>> pritn(color) {'a': 'yellow'}
五、删除字典中的元素:使用del删除,可是要指定自定变量名以及键(删除后这一对键-值对将会永远消失)dom
>>> del aline['color'] >>> print(aline) 输出示例:{'point': 5, 'hanhan': 'hanhan'}
六、遍历字典:keys(),values(),items(),例子以下:编程语言
>>>favorite_language={'wanglongtai':'c','tiankang':'java', 'wangyanping':'python'} >>> for name,language in favorite_language.items(): print(name.title()+"'s favorite language is "+language.title()+'.') 输出示例: Wanglongtai's favorite language is C. Tiankang's favorite language is Java. Wangyanping's favorite language is Python. >>> for name in favorite_language.keys(): print(name.title()) 输出示例: Wanglongtai Tiankang Wangyanping >>> for language in favorite_language.values(): print(language.title()) 输出示例: C Java Python
其实keys返回的是一个列表,因此可用for循环遍历keys列表中的元素svg
七、在某一个字典中,键有不少,相关联的值对也有不少,而重复的值对也有不少,为了使值对输出时每一个值都是独一无二的,可以使用set(集合)函数
>>> favorite_language={'jen':'python','jonh':'c++','mike':'java','tom':'python'} >>> for language in set(favorite_language.values()): print(language.title()) 输出示例: Python Java C++
八、字典的嵌套(十分强大)
>>> alien_0={'color':'green','point':5} >>> alien_1={'color':'yellow','point':10} >>> alien_2={'color':'red','point':15} >>> aliens=[alien_0,alien_1,alien_2] >>> for alien in aliens: print(alien) 输出示例: {'color': 'green', 'point': 5} {'color': 'yellow', 'point': 10} {'color': 'red', 'point': 15}
九、字典中嵌套列表
:
使用该方法可以使得一个键可对应多个值对,在”六、“中可以使用此法让每一个人有多个喜欢的编程语言
customer_pizza={'crust':'thick','toppings':['mushrooms','extra cheese']} print('you orderd a '+customer_pizza['crust']+ '-pizza with the following toppings:') for each_topping in customer_pizza['toppings']: print('\t'+each_topping) 输出示例: you orderd a thick-pizza with the following toppings: mushrooms extra cheese
十、字典中嵌入字典
这样作,代码会复杂起来,若是在嵌套的字典中每个键又不一样,那代码将会更加复杂
user={'aTom':{'first_name':'amy','last':'tom','address':'china'}, 'mlise':{'first_name':'mohande','last':'lise','address':'USA'}} for user_name,user_info in user.items(): print("Username:"+user_name) full_name=user_info['first_name']+user_info['last'] print("\tfull name:"+full_name.title()) print("\taddress:"+user_info['address'].upper()) 输出示例: Username:aTom full name:Amytom address:CHINA Username:mlise full name:Mohandelise address:USA
下面以一段小代码结束这次笔记吧,这段代码是后续章节“外星人”小游戏中,如何随机产生外星人的代码(确切的说是思路吧),引用了random模块
import random #引入产生随机数模块 aliens=[] alien_1={'color':'green','speed':'slow','point':5} alien_2={'color':'yellow','speed':'medium','point':10} alien_3={'color':'red','speed':'fast','point':15} for i in range(0,30): #产生三十个外星人 number=random.randint(1,4) #随机产生1,2,3中的一个数 if number==1: aliens.append(alien_1) elif number==2: aliens.append(alien_2) else: aliens.append(alien_3) #append函数在列表末尾添加列表元素 for each_alien in aliens: print(each_alien) 输出示例: {'color': 'red', 'speed': 'fast', 'point': 15} {'color': 'yellow', 'speed': 'medium', 'point': 10} {'color': 'red', 'speed': 'fast', 'point': 15} {'color': 'green', 'speed': 'slow', 'point': 5} {'color': 'red', 'speed': 'fast', 'point': 15} ......
应该有三十个输出的,可是这里省略了大部分
emmmm,这是在学习Python作的笔记,今天第一次使用了有道云笔记作笔记,而后心血来潮想写个博客,嘿嘿。。。 我英语很差,可能在定义变量时会出现单词拼写错误,各位大佬不要介意 初学Python,不少地方不懂,若是笔记中出现某些代码错误,但愿大佬给我指出来。而后前几天已经把列表和元组学完了,也没有作详细的笔记,因此在开头只是简单介绍了一下列表和元组的区别,本文的绝大部分全是介绍字典的,应该比较详细了吧(资料上就这些,有些很简单的代码没有写)。 而后本身也没有注释代码的这个好习惯,哪位哥哥能够喷我一会儿,或许之后就会记住吧。 欢迎评论指正哦!