#序列解包,該方法適用於任何序列類型!
x, y, z = range(3)
print(x,y,z)
#Answer:
#0 1 2
x, y, z = iter([1,2,3])
print(x,y,z)
#Answer:
#1 2 3
x, y, z = map(str,range(3))
print(x,y,z)
#Answer:
#0 1 2
a = 5
b = 3
a, b = b, a #交換兩個變量的值
print(a,b)
#Answer:
#3 5
a, b, c = 1, 2, 3
print(a)
print(b)
print(c)
#Answer:
#1
#2
#3
a, b, *c = 0, 1, 2, 3, 4
print(a)
print(b)
print(c)
#Answer:
#0
#1
#[2, 3, 4]
a, *b, c = 0, 1, 2, 3, 4
print(a)
print(b)
print(c)
#Answer:
#0
#[1, 2, 3]
#4
a, *b, c = 0, 1
print(a)
print(b)
print(c)
#Answer
#0
#[]
#1
a, b, c = 'ABC'
print(a,b,c) #字符串序列解包
#Answer:
#A B C
a_set = set(range(8,14))
print(a_set)
b_set = set([0,1,2,3,0,1,2,3,7,8])
print(b_set) #自動去重
x = set() #空集合
s = {1,2,3,4}
s.add(3)
s.update({5,4,6})
print(s) #自動去重
s.discard(5) #刪除元素,不存在就忽略
s.remove(4) #刪除元素,不存在就拋出異常
s.pop() #刪除並返回一個元素,while(!s.empty()){~}
#a_set = {8, 9, 10, 11, 12, 13}
#b_set = {0, 1, 2, 3, 7, 8}
#支持交併補差
c_set = a_set.intersection(b_set) #交集
print(c_set)
#Answer:
#{8}
c_set = a_set & b_set #交集
print(c_set)
#Answer:
#{8}
c_set = a_set | b_set #並集
print(c_set)
#Answer:
#{0, 1, 2, 3, 7, 8, 9, 10, 11, 12, 13}
c_set = a_set.union(b_set) #並集
print(c_set)
#Answer:
#{0, 1, 2, 3, 7, 8, 9, 10, 11, 12, 13}
c_set = a_set - b_set #差集
print(c_set)
#Answer:
#{9, 10, 11, 12, 13}
c_set = a_set.difference(b_set) #差集
print(c_set)
#Answer:
#{9, 10, 11, 12, 13}
c_set = a_set ^ b_set #對稱差集
print(c_set)
c_set = a_set.symmetric_difference(b_set) #對稱差集
print(c_set)
#Answer:
#{0, 1, 2, 3, 7, 9, 10, 11, 12, 13}
flag = {1,2,3} <= {1,2,3}
print(flag) #判斷是否爲子集
#Answer:
#True
flag = a_set.issubset(b_set)
print(flag) #判斷是否爲子集
#False
flag = {2}.isdisjoint({5}) #如果兩個交集爲空,返回真
print(flag)
#Answer:
#True:
Python 基本數據類型基礎實戰【序列解包,集合】
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.