集合是無序的,不重複的資料集合,它裡面的元素是可雜湊的(不可變型別),但是集合本身是不可雜湊(所以集合做不了字典的鍵)的。以下是集合最重要的兩點:
去重,把乙個列表變成集合,就自動去重了。
關係測試,測試兩組資料之前的交集、差集、並集等關係。
1、集合的建立:
set1 = set()2、集合的增加:set2 =
print(set1,set2) #
set1 =3、集合的刪除:set1.add('景女神')
print(set1)
#update:迭代著增加
set1.update('a')
print(set1)
set1.update('老師')
print(set1)
set1.update([1,2,3])
print(set1)
set1 =4、集合的交集(&或者intersection):set1.remove('alex') # 刪除乙個元素
print(set1)
set1.pop() # 隨機刪除乙個元素
print(set1)
set1.clear() # 清空集合
print(set1)
del set1 # 刪除集合
print(set1)
set1 =5、集合的並集(| 或者 union)set2 =
print(set1 & set2) #
print(set1.intersection(set2)) #
set1 =6、集合的差集(- 或者 difference)set2 =
print(set1 | set2) #
print(set2.union(set1)) #
set1 =7、集合的反交集(^ 或者 symmetric_difference)set2 =
print(set1 - set2) #
print(set1.difference(set2)) #
set1 =8、集合的子集與超集()set2 =
print(set1 ^ set2) #
print(set1.symmetric_difference(set2)) #
set1 =9、frozenset不可變集合,讓集合變成不可變型別。set2 =
print(set1 < set2)
print(set1.issubset(set2)) # 這兩個相同,都是說明set1是set2子集。
print(set2 > set1)
print(set2.issuperset(set1)) # 這兩個相同,都是說明set2是set1超集。
s = frozenset('barry')1、賦值運算print(s,type(s)) # frozenset()
l1=[1,2,3,[4,5],6]可見,賦值運算為淺拷貝,l1與l2的記憶體位址相同l2=l1
print(l1) #[1, 2, 3, [4, 5], 6]
print(l2) #[1, 2, 3, [4, 5], 6]
print(l1) #[1, 2, 3, [4, 5, 7], 6]
print(l2) #[1, 2, 3, [4, 5, 7], 6]
2,淺拷貝copy
對於淺copy來說,第一層建立的是新的記憶體位址,而從第二層開始,指向的都是同乙個記憶體位址,所以,對於第二層以及更深的層數來說,保持一致性
3,深拷貝deepcopy
import copy對於深copy來說,兩個是完全獨立的,改變任意乙個的任何元素(無論多少層),另乙個絕對不改變。l1=[1,2,3,[4,5],6]
l2=copy.deepcopy(l1)
print(l1,id(l1)) #[1, 2, 3, [4, 5], 6] 45650632
print(l2,id(l2)) #[1, 2, 3, [4, 5], 6] 45651912
print(l1,id(l1[3])) #[1, 2, 3, [4, 5, 7], 6] 45650440
print(l2,id(l2[3])) #[1, 2, 3, [4, 5], 6] 45651848
python 增刪改查
lists aa aa 增lists.insert 0,aa 在索引為0的地方插入 aa lists.insert 5,aa 在索引為5的地方插入 aa 如果索引沒到5則插到尾部 刪lists.remove aa 刪除 第一遇到的 aa 從左向右 del lists 5 刪除指定索引的值 如果索引超...
Python 增刪改查
from pymysql import cursors from tools.config import config import random,string defcreatedatabase db config.db cur db.cursor cursor cursors.dictcurso...
java Set集合的增刪改查
set集合是無序且不可重複的,可以新增空.值進去.奇葩.set集合中的增添改查是類似於list中的,只不過不能新增到指定位置,因為set集合是無序的,也沒有get方法。歷遍元素只能使用迭代器或者for each來迴圈歷遍 具體方法為 增 add addall 刪 remove object remo...