集合、元组、字典 小知识

1.元组中的元素不允许修改

>>> tup1 = (1,2,3)
>>> tup1[0] = 1.1
Traceback (most recent call last):
  File "<pyshell#28>", line 1, in <module>
    tup1[0] = 1.1
TypeError: 'tuple' object does not support item assignment


max(tuple) 返回元组中元素最大值
min(tuple) 返回元组中最小值
tuple(seq) 将列表转换为元组

2.字典键值必须是不可变的,可以是数字、字符串、元组充当,用列表就不可以

len(dict)  计算字典元素个数
str(dict) 以字符串的形式输出字典
type(variable) 返回变量类型
>>> dic = {1:'a',2:'b',3:'c'}
>>> str(dic)
"{1: 'a', 2: 'b', 3: 'c'}"
>>> type(dic)
<class 'dict'>

3.使用大括号 { }或者set()函数创建集合

>>> a = set('asdfghjl')
>>> a
{'j', 'h', 'g', 'f', 'd', 'l', 'a', 's'}

类似与列表推导式,同样集合支持集合推导式

>>> a = [x for x in 'abcdsdabcabjajcccbajbcb' if x not in 'abc']
>>> a
['d', 's', 'd', 'j', 'j', 'j']
>>> b = {x for x in 'abcdsdabcabjajcccbajbcb' if x not in 'abc'}
>>> b
{'d', 'j', 's'}
s.add(x) 向集合s中添加元素
s.update(x) 也可以添加元素,且参数可以是列表、元组、字典
s.remove(x) 移除元素x,若不存在会发生错误
s.discard(x) 也是移除元素,但元素不存在不会发生错误
s.pop() 随机删除集合中的一个元素
s.clear() 清空集合s

添加元素 a.add(x)

a,update(x) 也可以添加元素,而且参数可以是列表、元组、字典等。

>>> newset = set(('baidu','google','taobao'))
>>> newset
{'baidu', 'google', 'taobao'}
>>> newset.update({1,2,3})
>>> newset
{'baidu', 'google', 1, 2, 3, 'taobao'}
>>> newset.update(['a','b','c'])
>>> 
>>> newset
{'baidu', 'google', 1, 2, 3, 'b', 'c', 'taobao', 'a'}
>>> newset.update(['a','b','c'],['happy','ok'])
>>> newset
{'baidu', 1, 2, 3, 'happy', 'google', 'c', 'ok', 'b', 'taobao', 'a'}

猜你喜欢

转载自blog.csdn.net/dxcve/article/details/81034616
今日推荐