集合:
set(集合)和dict(字典)类似,但集合只有键,没有值,同样因为键不能重复,所以集合内没有重复的元素。 键为不可变类型,可哈希。
创建一个空集合只能用s=set(),s={}只能创建空字典。
创建集合用花括号把所有元素括起来就行,元素之间用逗号相隔。集合内的重复元素会自动被过滤。
使用set(value)函数,可以把字符串,列表,或元组转换为集合。
集合有两个特点,无序和唯一。
集合不能索引也不能切片,也不能通过键来获取集合中元素的值,但是可以判断元素是否在集合内。
- set.add(elmnt)用来给集合添加元素。
- set.update(set)把一个集合中的元素更新到另一个集合中,不同的添加,相同的忽略。
- set.remove(item)用来移除集合中的指定元素。元素必须为集合内的元素,否则会报错。
- set.discard(value)在移除元素时,若元素不存在不会报错。
- set.pop()随机移除一个元素。
- set.intersection(set1,set2…) = set1 & set2 返回两个集合的交集。
- set.union(set1,set2…) = set1 | set2 返回两个集合的并集。
- set.difference(set) = set1 - set2 返回集合的差集。
- set.symmetric_difference(set) = set1 ^ set2 返回集合的异或,删除两个集合相同的元素,把两个集合不同的元素集合到一起。
- set.issubset(set) = set1<=set2 判断集合是不是被其他集合包含,如果是则返回True,否则返回False。
- set.issuperset(set) = set1>=set2 用于判断集合是不是包含其他集合,如果是则返回True,否则返回False.
- set.isdisjoint(set)用于判断两个集合是不是不相交,如果是返回True,否则返回False.
python中有一个不能改变元素的集合的实现版本,类型名为frozenset,该类型能够进行集合的操作,只是不能改变集合。
练习题:
- tuple1=(1,)
- set1=set()
set2={“x”,“y”,“z”}
set1.update(set2) - list1=[“A”,“B”,“A”,“B”]
set1=set(list1)
list1=list(set1) - set1={6,7,8}
set2={7,8,9}
set1 ^ set2 - set1={“A”,“B”,“C”}
set2={“B”,“C”,“D”}
times=0
for i in set1:
if i in set2:
times+=1
print(times)
序列:
- max(sub)返回序列中的最大值。 min(sub)返回序列中的最小值。
- sum(iterable[,start=0])返回序列与可选参数start的总和。
- sorted()对序列进行排序。
- reversed(seq)反转序列。
- enumerate(sequence,[start=0]) 将序列转换为一个索引序列,标出数据及数据下标。
- zip()把元素打包成元组,用来节约内存,输出时可以用list()转换来输出为列表。
练习题:
- max(list1) min(list1)
- sort 只能用在列表上,sorted()可以用在所有可迭代的对象上。sort是在原有的列表上修改,而sorted()则是返回一个新的迭代对象。
- sum(range(1,101))
- list1=[2,3,4,5]
list2=[]
for i in list1:
list2.append(i**1/3)
print(list2) - list1=[“x”,“y”,“z”]
list2=[1,2,3]
list3=[]
for i in range(0,3):
s=(list1[i],list2[i])
list3.append(s)
print(list3)
心得:原本我真的是无聊才去参加这个活动,但是我感觉我真的在每天的坚持学习,记笔记中学到了许多知识。相信到最后我一定会收获很大。 & _ &