我作为一名初学者,为了强化记忆有必要把看过的一些优秀的文章中一些技巧通过notebook的方式练习一次。我认为这么做有几个优点:一来加深印象;二来也可以将学习过的内容保存方便日后查阅;第三也可以培养我写博的习惯(一直都没那个习惯) 身为程序员除了需要具备解决问题的思路以外,代码的质量和简洁性也很关键,今天又学习到了一些觉得自己很高级的内容跟大家分享,内容包括: 选择正确的内置功能 python有一个大型标准库,但只有一个内置函数的小型库,这些函数总是可用的,不需要导入。它们每一个都值得我们仔细研究,但是在研究前,我还是给大家一些小的提示,尤其是在其中一些函数的情况下,可以用什么替代更好。 binations()生成组合。这些也是输入值的可能分组,但现在值的顺序无关紧要。因为('sam'、'devon')和('devon'、'sam')代表同一对,所以输出列表中只会包含它们中的一个:
|
1、字典是一种可变的容器,可以存储任意类型的数据
2、字典中的每个数据都是用’键’(key)进行索引,而不像序列可以用下标来进行索引
3、字典的数据没有先后顺序关系,字典的存储是无序的
4、字典中的数据以键(key) – 值(value)对进行映射存储
5、字典的键不能重复,且只能用不可变类型作为字典的键
6、字典的字面值表示方法:
用{}括起来,以冒号(:)分隔键值对,各键值对用分号分隔开(注:列表和元组只能做为值,不能作为键,字典里面也可以包含字典)
d = {‘姓名’: ‘张蕊’, ‘年龄’:’25岁’}
二:字典的构造函数 dict
1、dict() 创建一个空字典,等同于 {}
用 [] 运算符可以获取字典内‘键’所对应的‘值’
2、添加和修改字典的元素
字典[键] = 表达式
1、可以用in运算符来判断一个’键’是否存在于字典中,如果存在则返回True,否则返回False,
2、字典是可迭代对象,字典只能对键进行迭代访问
5、any(x) ---- 真值测试,只对键测试,如果其中一个键为True,结果为True
2、pop(key) 移除键,同时返回此键所对应的值
3、copy() 返回字典D的副本,只复制一层(浅拷贝)
4、update(d2) 将字典d2合并到d中,如果键相同,帽此键的值取d2的值作为新值
1、字典推导式是用可迭代对象依次生成字典内元素的表达式
{键表达式:值表达式 for 变量 in 可迭代对象 [if 真值表达式]}
(注:[]的内容可省略)
1、写一个程序,实现以下需求:
将如下数据形成一个字典seasons
1‘春季有1,2,3月’
2‘夏季有4,5,6月’
3‘秋季有7,8,9月’
4‘冬季有10,11,12月’
让用户一个整数代表这个季度,打印这个季度的信息,如果用户输入的信息不在字典的键内,则打信息不存在。
2、输入一段字符串,打印出这个字符串中出现过的字符及出现过的次数。
尾声:这就是有关python字典的应用及方法,希望大家下去以后要多练练手,如果喜欢IT时代的分享,请多多关注、评论、加粉!谢谢!
1、大多数计算机编程语言是用英文单词或缩写表示命令、将数学运算引入到语言中,将命令按照一定的规则和要求写到一起。用这种语言写出的命令集合就是程序
(2)python支持面向过程、面向对象、交互式编程
(5)python是胶水语言(可以嵌入到其它语言编写的程序中)
(2)用于测试(结合Selenium做功能测试、界面测试、兼容性测试,结合Appium可以做手机测试等移动端测试,结合requests可以做接口自动化测试)
使用(数据1,数据2,...)这种形式存数据的一种方式
(1)tuple(字符串):可以将字符串变成元组,字符串中的每个字符变成元组的元素
(2)tuple(列表):表示把列表转型为元组,形式上相当于把列表中的[]变成(),但是使用不同,列表可以修改,但元组不能修改
可以把两个元组合并到一起,生成一个新的元组,元组1和元组2都没有改变
字典是使用键值对存储数据的一种形式,键值对的写法是1:23、'a':23.4、'姓名':'张三',重点在冒号间隔,左边是键,右边是值/数据
键的意思由写的人来解释,比如1:23可以表示1号的值是23,'a':23.4可以解释成a等于23.4,'姓名':'张三'可以解释成姓名叫张三
字典的形式就是用花括号{}把键值对括起来,键值都用逗号间隔
'姓名':'张三’},a就是一个字典
键与定义字典时一致,写不写引号取决于定义字典时的写法
使用dict(a=23)形式定义的字典,键都会自动加引号了
注意:在一个字典中,键不能重复,否则只保留最后一个
当字典a中没有键x的时候,在字典中添加键值对:’x’:数据
表示删除字典a中的键x以及x对应的值或数据(键值对一起删除)
意思是,将列表中的每个元素都转为字典的键,值全部是指定的默认值,如果没写默认值,那么所有键的值统一被python存为None
,默认值) 字面翻译为从(from)列表中获得键(keys),生成一个字典(dict),值都是指定的默认值
如果字典1中有键1,则修改字典1中键1的值,如果字典1中没有键1,则向字典1中增加"键1":"值1"数据对
如果字典a中存在键1,则返回键1的值,如果字典a中不存在键1,则会在字典中添加键1,值为None(空值)
如果字典a中存在键1,则返回键1的值(不是’x’), 如果字典a中不存在键1,则在字典a中添加键1,值为’x’
意义主要是,想修改字典内容,但是还想看原来的字典内容
如果键1存在,则删除键1 以及对应的值,此时”消息1”没有意义
(1)集合也是很多数据构成的一种形式,用{数据1,数据2,...}
(2)集合中数据的值是不能重复的,但是如果人为将重复数据放入集合,prthon不会报错,但python会自动去重(也就是重复数据只保留一份)
说明:只能整体使用集合,不支持下标、索引、编号,因为集合是无序的(所谓的无序,就是数据没有顺序,也就是数据不给编号)
表示把数据增加到集合中,如果重复,则不会报错,直接忽略则增加操作
update本来的英文意思是更新(增加、修改、删除都是更新),但是在集合中其实是合并集合的意思,集合.update(集合1)的意思是把集合1的数据合并到集合中
是从集合中删除数据,如果数据不存在,则报错,抛异常
是从集合中删除数据,如果数据不存在,不报错,忽略删除操作