python每日一练之集合set
集合是一种无序元素不重复的列表。可以用set_1 = {elements}或者set1_1 = set(iterable)创建。注意如果是空集,必须使用set()方法创建,set_1={}此时set_1是字典。
练习题
""" 题35.创建一个空集合,增加元素 题36 删除集合中的元素,插入元素 题37. 返回集合中{1, 2, 3}未出现在集合{2, 4, 5}中的元素 题38. 返回两个集合{1, 2, 3}和{2, 4, 5}并集 题39. 返回两个集合{1, 2, 3}和{2, 4, 5}交集 题40.返回两个集合{1, 2, 3}和{2, 4, 5}未重复的元素集合 题41.判断两个集合{1, 2, 3}和{2, 4, 5}是否有重复的元素 题42.判断集合(1, 2)是否是{1, 3, 4, 2}的子集 题43.去除数组[1, 2, 3, 2, 5, 'x', 'a', 'x']中的重复元素 """ def create_set(): set1 = set() set1.add(1) set1.add(2) # set1.update(0, 3) # update()的参数要是可迭代对象,所以这里出错。可以用列表、字典、元组等 print(set1) def del_value(): set2 = {1, 2, 3} set2.remove(1) # set.discard()也是删除指定元素;pop则随机删除;clear()清除所有 set2.update([1, 2, 3]) print(set2) def set_add(): """ 题38. 返回两个集合{1, 2, 3}和{2, 4, 5}并集 :return: """ set3_1 = {1, 2, 3} set3_2 = {1, 4, 3} set3 = set3_1 | set3_2 print(set3) def sets_operation1(): """ 题39. 返回两个集合{1, 2, 3}和{2, 4, 5}交集 :return: """ set4_1 = {1, 2, 3} set4_2 = {2, 4, 5} set4 = set4_1 & set4_2 print('输出两个集合的交集', set4) def sets_operation2(): """ 题40.返回两个集合{1, 2, 3}和{2, 4, 5}未重复的元素集合 :return: """ set5_1 = {1, 2, 3} set5_2 = {2, 4, 5} set5 = set5_1 ^ set5_2 print(set5) def sets_operation3(): """ 题41.判断两个集合{1, 2, 3}和{2, 4, 5}是否有重复的元素 题42.判断集合(1, 2)是否是{1, 3, 4, 2}的子集 题43.去除数组[1, 2, 3, 2, 5, 'x', 'a', 'x']中的重复元素 :return: """ set6_1 = {1, 2, 3} set6_2 = {2, 4, 5} set6 = set6_1 & set6_2 if len(set6) == 0: print('无重复元素') else: print('有重复元素') def set_operation4(): """ 题42.判断集合(1, 2)是否是{1, 3, 4, 2}的子集 :return: """ set7_1 = {1, 2} set7_2 = {1, 2, 3, 4} set7 = set7_1 - set7_2 if len(set7) == 0: print('set7_1是set7_2的子集') else: print('不在') def set_operation5(): """ 题43.去除数组[1, 2, 3, 2, 5, 'x', 'a', 'x']中的重复元素 :return: """ list1 = [1, 2, 3, 2, 5, 'x', 'a', 'x'] set8 = set(list1) print(set8) list1 = list(set8) print(list1)