python自动复制输出_python 深浅拷贝集合
一、深淺拷貝
1.淺拷貝,只會拷貝第一層
s = [1, 'ss', '小可愛']
s1=s.copy()print(s1)
>>>
[1, 'ss', '小可愛']
s = [1, 'ss', '小可愛']
s1=s.copy()
s1[0]= 3 #修改s1的值
print(s1)
>>>
[3, 'ss', '小可愛']
#淺拷貝,只會拷貝第一層,修改完s1里面列表的值后,數據源也會改變
s = [[1, 2], 'ss', '小可愛']
s1=s.copy()
s1[0][1] = 3 #修改s1的值
print(s1)print(s)
>>>
[[1, 3], 'ss', '小可愛']
[[1, 3], 'ss', '小可愛']
2.深拷貝 = 克隆一份
importcopy
s= [[1, 2], 'ss', '小可愛']
s1=copy.deepcopy(s)
s1[0][1] = 3 #修改s1的值
print(s)print(s1)
>>>
[[1, 2], 'ss', '小可愛']
[[1, 3], 'ss', '小可愛']
二、集合:
把不同的元素集合到一起,組成集合的成員不可重復如果有重復的元素保留一個
主要作用:
1.去重,把一個列表變成集合就自動去重了;
2.關系測試,交集、并集等關系
集合的創建:
a = set('xiaoss baby')
print(a)# 輸出:{'a', 'y', 'b', 'o', 'x', ' ', 'i', 's'}
分類:可變集合、不可變集合
可變集合(set):可添加和刪除元素,非可哈希的,不能做字典的鍵和其他集合的元素
不可變集合(frozenset):與上相反
基本操作:
li = ['xiao', 2, 5]
s=set(li)
s.add('baby') #添加一個元素
print(s)
s.update('ops') #把要添加的字符串作為一個單獨的序列加到集合里
print(s)
>>>
{2, 'xiao', 'baby', 5}
{2, 5, 'o', 'baby', 'p', 'xiao', 's'}
li = ['xiao', 2, 5]
s=set(li)
s.update('ooo') #重復的字符只添加一個到集合里
print(s)
>>>
{'o', 2, 'xiao', 5}
li = ['xiao', 2, 5]
s=set(li)
s.update([12, 'baby']) #添加多個元素要放到一個容器里
print(s)
>>>
{2, 5, 'baby', 12, 'xiao'}
#刪除操作
li = ['xi', 2, 5]
s=set(li)#刪除
s.remove(2) #()里存放要刪除的內容
s.pop() #隨機刪除一個
s.clear() #清空
del s #直接刪除整個集合
print(s)
>>>
print(set('qwer') == set('qwereq'))#True 因為兩者形成的集合結果一樣,所以等價
print(set('qwer') < set('qwerty'))#True < 表示后者包含前者
>>>
True
True
#聯合操作
print(set('qwer') or set('qwerty')) #取兩者共同的
print(set('qwer') and set('qwerty')) #取兩者包含的所有序列元素
>>>
{'w', 'e', 'q', 'r'}
{'w', 'y', 'r', 't', 'e', 'q'}
a = set([1, 2, 3, 4, 5])
b= set([3, 4, 5, 6, 7])#intersection() 交集
print(a.intersection(b))print(a & b) #同上
#union 并集
print(a.union(b))print(a | b) #同上
#差集(互相不在對方里面)
print(a.difference(b)) #在a不在b 或print(a - b)
print(b.difference(a)) #在b不在a 或print(b - a)
#反向交集
print(a.symmetric_difference(b))#父集
print(a.issuperset(b)) #判斷a是否完全包含于b
#子集
print(a.issubset(b))
>>>
{3, 4, 5}
{3, 4, 5}
{1, 2, 3, 4, 5, 6, 7}
{1, 2, 3, 4, 5, 6, 7}
{1, 2}
{6, 7}
{1, 2, 6, 7}
False
False
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的python自动复制输出_python 深浅拷贝集合的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: u盘复制不进去东西_限制电脑只能识别自己
- 下一篇: sql 列求和_Excel VBA高级编