python入門13 集合set
阿新 • • 發佈:2018-11-11
set集合與數學中的集合同一個概念,是無序不重複元素組成的。
#coding:utf-8 #/usr/bin/python """ 2018-11-10 dinghanhua 集合 """ '''集合是無序的不重複的元素序列,不支援索引''' '''定義''' set1 = {1,2,3,2} print(set1) #元素不重複 set2 = set('python is easy to use') print(set2)
'''set用於list,string去重''' li = ['peter','jary','peter','fee'] set_list= list(set(li)) #set > list print('取list不重複的資料',set_list) str1 = 'jwejfewfjewpfjepw' set_str = str(set(str1)) print('set用於取字串的不重複字元:',set_str)
'''新增、刪除元素、長度、元素是否存在''' set1.add('grape') print(set1) set2.update(['watermelon']) set2.update(('pear','apple')) set2.update({'whatever'}) print(set2) set2.remove('apple') set2.discard('tomato') which = set2.pop() #隨機刪 print(which) print(set2) #長度 print(len(set1)) #清空 set1.clear() print(set1) #是否包含某元素 print( 'apple' in set2)
'''集合的運算:並集、差集、交集''' set1 = {'apple','pear','banana'} set2 = {'peach','orange','tomato','potato','pear'} set3 = {'banana'} print('交集 在set1,set2同時存在的',set1&set2) print(set1.intersection(set2)) print('差集,在set1,不在set2的',set1-set2) print(set1.difference(set2)) print('只在一個集合裡的',set1^set2) print(set1.symmetric_difference(set2)) print('並集,在set1或set2的',set1 | set2) print(set1.union(set2)) print(set1.isdisjoint(set2)) #是否沒有交集 有交集-False,沒交集-True print(set3.issubset(set2)) #set3是否是set2的子集 print(set1.issuperset(set3)) #set1是否是set3的父集
the end!