day4-python基础知识 <元组&&集合>

元组  tuple

定义:值不可修改,只可用下标读取内容的一种数据序列列表。中括号标识

用处:开发中,防止他人修改自己的代码。

怎么定义?

# -仅一个元素的元组,不加逗号,就是个int类型数值
a = (1) 《==》a = 1
print(type(a))
# <class 'int'>

# -定义元组,只有一个元素时,后面需要加逗号
a = (1,)
print(type(a))
# <class 'tuple'>

集合
'''
-传入的参数必须是一个list,与字典dict类似,但集合已有一个key,没有value
'''
a = set([1,2,3,45])
print(a)
# {1, 2, 3, 45},仅告诉,这个集合里面有三个元素,3个key
s=set()
print(s.add('a'))
print(s.pop())
s.remove()
# 集合。天生可以去重
l=[1,2,3,4,5,6,7,2,3,2,2]
lset= set(l)     
print(lset)
# 输出:{1, 2, 3, 4, 5, 6, 7},集合自动去重


stus1 = {'胡燕','王义','王新','马波','高平'}
stus2 = {'乔玲','胡燕','王义','王新','马波',"王铭"}

# 交集1
res=stus1.intersection(stus2)
print(res)
# 交集2  --------用的多,用的多,用的多,用的多,用的多
res1=stus1 & stus2
print(res1)
# 输出:{'马波', '王新', '胡燕', '王义'}

# 并集1
res2=stus1.union(stus2)
# 取并集2
res2=stus1 | stus2
print(res2)
# 输出:{'马波', '王铭', '王新', '王义', '胡燕', '高平', '乔玲'}

# 取差级。在一个里面有,另一个里面无
res2=stus1 - stus2
res3=stus2-stus1
print(res2)

# # 对称差级。只在一个里面出现
res=stus1.symmetric_difference(stus2)
res1=stus2^stus1
# print(res)

  

posted @ 2018-11-27 23:43  维也纳729  阅读(136)  评论(0编辑  收藏  举报