Pyhton入门 笔记 第五天 Pythonic与Python…
2018-07-18 01:15:52来源:博客园 阅读 ()
一,Python 字典映射,代替 switch
Python中,没有switch,在别的语言中为
switch(day) { case 0: dayName="Sunday"; break; case 1: dayName="Monday"; break; case 2: dayName="Tuesday"; break; ....... default : dayName="Unknown" }
上例,在Python中,用字典映射
1)当day的值存在字典的key中时
day=2 switcher={ 0:'Sunday', 1:'Monday', 2:'Tuesday', } day_name=swticher[day] print(day_name)
2)当day的值不存在字典switcher中,而且要有默认真时。
day=6 switcher={ 0:'Sunday', 1:'Monday', 2:'Tuesday', } day_name=swticher.get(day,unknown) #使用get()方法,当值超出时可得到默认值unknown print(day_name)
3)当字典中的值为代码块的时候
day=5 def get_sunday(): return 'Sunday' def get_monday(): return 'Monday' def get_tuesday(): return 'Tuesday' def get_default(): return 'Unknown' switcher={ 0:get_sunday, 1:get_monday, 2:get_tuesday } day_name=switcher.get(day,get_default)() #直接返回函数 print(day_name)
二推导式
1)
#列表推导式 #集合推导式 #map filter #set 也可以被推导 #dict,也可以被推导 a=[1,2,3,4,5,6,7,8,9] #要求,计算a中各项的平方 b=[i*i for i in a] #i*i也可以写为i**2,所以,i的3次方,也可以写为i**3 print(b)
2)
#列表推导式 #集合推导式 #map filter #set 也可以被推导 #dict,也可以被推导 a=[1,2,3,4,5,6,7,8,9] #要求,计算a大于等于中各项的平方 b=[i*i for i in a if i>=5] #注,推导不至可以用[],也可以用{},如果b={i*i for i in a if i>=5} 但得到的类型就不同了。
print(b)
3)字典的推导
students={ '小晨':15, '浸染':45, '当当':12 } b=[key for key,value in students.items()] #因为字典是key,和value两个值,所以也要两个参数(必须的) 同时要使用函数items() print(b)
4)字典的推导,让字典的key与value相反输出
students={ '小晨':15, '浸染':45, '当当':12 } b={value:key for key,value in students.items()} print(b)
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 小白如何入门 Python 爬虫? 2019-08-13
- Python之装饰器笔记 2019-08-13
- Python之对象持久化笔记 2019-08-13
- Python单元测试笔记 2019-08-13
- 编程小白的第一本python入门书(高清版)PDF下载 2019-07-24
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash