提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
“键值对”的无序可变序列
通过{}创建
通过dict()创建
通过zip()创建k=['name','age','job'] v=['gaoqi',18,'teacher'] d=dict(zip(k,v))
通过fromkeys创建值为空的字典
通过get()方法获得“值”
a.items()列出所有的键值对
a.keys()
a.values()
len()
in 检测一个“键”是否在字典中
update()将字典种所有键值对全部添加到旧字典对象上
删除:
del() 字典中元素的删除
clear() 删除所有键值对
pop() 删除指定键值对,并返回对应的“值对象”
popitem() 随机删除和返回键值对
序列解包可以用于元组、列表、字典。序列解包用于字典时,默认是对“键”进行操作
s = {
'name':'gaoqi','age':18,'job':'teacher'}
name,age,job=s #默认对键进行操作
name #'name'
字典对象的核心是散列表。散列表是一个稀疏数组(总是有空白元素的数组),数组的
每个单元叫做bucket。每个bucket 有两部分:一个是键对象的引用,一个是值对象的引
用。
用法小结
键必须可散列
(1) 数字、字符串、元组,都是可散列的。
(2) 自定义对象需要支持下面三点:
无序可变,元素不能重复,集合底层是字典实现
使用{}创建
使用set()将可迭代对象转成集合
remove() 删除指定元素
clear() 清空整个集合
并集 a|b;a.union(b)
交集 a&b; a.intersection(b)
差集a-b; a.difference(b)
在选择和循环结构中,条件表达式的值为False 的情况如下:
False、0、0.0、空值None、空序列对象(空列表、空元祖、空集合、空字典、空字
符串)、空range 对象、空迭代对象。其他情况,均为True。
三元运算符语法格式:条件为真时的值 if (条件表达式) else 条件为假时的值
双分支选择结构:
num = input("输入一个数字:")
if int(num)<10:
print(num)
else:
print("数字太大")
等价于使用三元运算符的下列代码:
num = input("请输入一个数字")
print( num if int(num)<10 else "数字太大")
循环体里面的语句至少应该包含改变条件表达式的语句,以使循环趋于结束;否
则,就会变成一个死循环。
while 循环的语法格式如下:
while 条件表达式:
循环体语句