Python语法6
这次我们整理关于元组,集合,字典的知识
元组
元组与我们之前讲的列表相似,但是元组不支持动态添加,删除元素,当然也不可以修改元素。
元组的初始化
元组用小括号表示,中间的元素用逗号隔开
注意,如果初始化只包含一个元素的元组,需要在该元素后面添加一个逗号
a = ()#初始化一个空元组
b = (1,3)
c = 6,"python",3,4
d = (5,)#如果写成(5),这里的小括号表示的是运算级的那里的小括号,就不再表示成元组的括号了
e =5,#这里也是一个元组,等价于(5,)
元组的解包
a = (1,3,4)
x,y,z = a
print(x,y,z)#输出1 3 4
所以之前学的交换数值的操作其实就相当于是一个元组的解包
a,b=3,4#将(3,4)元组解包,分别赋值给a,b
b,a=a,b#将元组(a,b)解包,分别赋值给b,a
同理,函数中一次返回多个值,其实也是返回一个元组
def func(x,y):
return x+y,x-y
x,y=5,6
a,b = func(x,y)
print(a,b)
元组的比较操作
元组和列表均支持比较运算符:==,!=,>,<,>=,<=等,按照字典序进行比较
元组的其他操作
元组的下标访问元素、循环遍历、切片、加法和乘法运算等操作,都与列表相同。
集合
集合也是Python中常用的数据结构,用来存储不同元素,注意,集合中的元素是无序的。集合会自动判重,去掉重复元素。
集合的初始化
创建集合用花括号或set()函数。注意:创建空集合只能用set(),不能用{ },因为{ }创建的是空字典。
basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'} # 会自动去除重复元素
print(basket) # 重复的元素已经去除了
s = set() # 初始化一个空列表
print(s)
a = [1, 2, 1, 3, 1]
b = set(a) # 将列表转化成集合,一般是为了去重。
c = list(b) # 将集合转化回列表
print(b, c)
x = "abracadabra"
a = set(x) # 将字符串中的每个字符存到集合中
b = str(a) # 注意,这里并不能将集合转化回原字符串,而是用格式化表示集合中的内容
print(a, b)
集合的常用操作
len(a)#返回集合a的长度
a.add(x)#在集合中添加一个元素
a.remove(x)#在集合中删除一个元素x,如果x不存在就会报错
a.discard(x)#删除集合中的x,如果x不存在,则不会执行任何操作
x in a#判断x是否在a中
x not in a#x是否不在a内
使用for循环遍历集合
a={1,2,3}
for i in a:
print(i,end="")
字典
字典是Python中最常用的数据结构之一,用来存储映射关系。
注意,字典中的元素是无序的。
不同于列表,字典是以key进行索引的,可以将每个key映射到某个value。key可以是任何不可变类型,常用可以作为key的类型有数字和字符串。列表因为是可变的,所以不能作为key。value可以是任意类型。
字典的初始化
创建字典用花括号或者dict()函数
a = {"jack":23,"du463":32,"xiaocai":43}
print(a)
b = dict()
a[123]="23"#创建一个key-value对
print(a)
c=list(a)#将字典的关键字转换成列表
print(c)
字典的常用操作
len(a)#返回字典中的元素对数
a[x]#获取关键字x的对应值,如果x不存在,会报异常
a.get(x)#获取关键字x对应的值,如果x不存在,会返回none,不会报异常
a.get(x,y)#获取关键字x对应的值,如果x不存在,则会返回默认值y,不会报异常
a[x]=y#在字典中插入一个键值对(x,y),如果x存在,则会覆盖掉之前的值
del a[x]#删除关键字x对应的键值对,如果x不存在,会报异常
x in a#检查字典中是否存在关键字x
x not in a#检查字典中是否不存在关键字x
a.keys()#返回字典中所有的key
a.values()#返回字典中所有的value
a.items()#返回字典中所有由key和value组成的元组
举例:
a = {'abc': 1, 'def': 2, 'python': 3} # 初始化一个字典
print(len(a)) # 输出3
print(a['def']) # 输出2
print(a.get('def')) # 输出2
print(a.get('xyz', 5)) # 因为'xyz'不存在,所以输出默认值5
a['hello'] = 4 # 插入一对元素 'hello' -> 4
print(a) # 输出{'abc': 1, 'def': 2, 'python': 3, 'hello': 4}
a['def'] = 5 # 更新'def'映射的值
print(a['def']) # 输出5
del a['python'] # 删除关键字'python'
print(a) # 输出{'abc': 1, 'def': 5, 'hello': 4}
print('hello' in a) # 输出True
print(a.keys()) # 输出dict_keys(['abc', 'def', 'hello'])
print(a.values()) # 输出dict_values([1, 5, 4])
print(a.items()) # 输出dict_items([('abc', 1), ('def', 5), ('hello', 4)])
使用for循环遍历字典
a = {'abc': 1, 'def': 2, 'python': 3} # 初始化一个字典
for k in a: # 遍历key
print(k, end=' ')
for k in a.keys(): # 遍历key
print(k, end=' ')
for v in a.values(): # 遍历value
print(v, end=' ')
for k, v in a.items(): # 遍历key-value对
print("(%s, %d) " % (k, v), end=' ')
标签:Python,元组,语法,集合,key,print,def,字典
From: https://www.cnblogs.com/du463/p/17788204.html