一、li.append()
#添加元素到末尾,返回nonepython
二、li.clear()
#一個比較危險的方法(QAQ)git
三、li.copy()
#複製 不是同一個對象(內存地址不同)數組
四、li.count()
#計算列表裏的元素出現的次數app
五、li.extend([])
#往列表裏添加多個值函數
六、li.index()
#默認返回元素第一次出現的位置,能夠添加查找範圍code
七、li.insert()
#指定索引插入元素對象
八、li.pop()
#默認刪除最後一個元素,能夠指定索引刪除排序
九、li.remove()
#指定刪除索引
十、li.reverse()
#反向列表元素內存
十一、li.sort()
#默認ASCII碼排序,按照首字母大小排序
按長度排序
li.sort(key=len)
由短到長
li.sort(key=len,reverse=True)
由長到短
拷貝就是拷貝,何來深淺之說?
Python中,對象的賦值,拷貝(深/淺拷貝)之間是有差別的,若是使用的時候不注意,就可能產生意外的結果
其實這個是因爲共享內存致使的結果
拷貝:原則上就是把數據分離出來,複製其數據,並之後修改互不影響。
淺拷貝:數據半共享(複製其數據獨立內存存放,可是隻拷貝成功第一層)
l1 = [1,2,3,[11,22,33]] l2 = l1.copy() print(l2) #[1,2,3,[11,22,33]] l2[3][2]='aaa' print(l1) #[1, 2, 3, [11, 22, 'aaa']] print(l2) #[1, 2, 3, [11, 22, 'aaa']] l1[0]= 0 print(l1) #[0, 2, 3, [11, 22, 'aaa']] print(l2) #[1, 2, 3, [11, 22, 'aaa']] print(id(l1)==id(l2)) #Flase
複製對象最外層的內存。 最外層獨立,第二次沒法獨立,會隨l1變更
深拷貝:數據徹底不共享(複製其數據完徹底全放獨立的一個內存,徹底拷貝,數據不共享)
深拷貝就是完徹底全複製了一份,且數據不會互相影響,由於內存不共享。
import copy l2 = copy.deepcopy(l1)
元組只有兩種方法
一、tu.count()
#統計元素出現次數
二、tu.index
#查找元素索引
一、s.count()
#統計元素的個數
二、s.endswith()
#判斷是否以什麼結束
三、s.startwith()
#判斷是否以什麼開頭
四、s.find()
#查找元素索引位置默認返回第一個,若是字符串裏沒有該元素則直接返回-1
五、s.isalpha()
#判斷是否全是字母
六、s.isdigit()
#判斷是否全是正實數
七、s.islower()
#判斷是否全是小寫
八、s.isupper()
#判斷是否全是大寫
九、s.lower()
#所有轉化成小寫
十、s.upper()
#所有轉化成大寫
十一、s.replace('a','1')
默認全部'a'替換成'1'
s.replace('a','1',2)
替換2個'a'爲'1'
十二、s.split()
# 指定分隔符對字符串進行切片 ,字符串變成列表
一、d.clear()
# 刪除字典內全部元素
二、d.copy()
#返回一個字典的淺複製
三、 fromkeys()
函數用於建立一個新字典,以序列 seq 中元素作字典的鍵,value 爲字典全部鍵對應的初始值
>>> a = ['1','2','3']>>> d = dict.fromkeys(a)>>> d{'1': None, '2': None, '3': None}>>> d = dict.fromkeys(a,12)>>> d{'1': 12, '2': 12, '3': 12}
四、d.get(key,default=None)
# 返回指定鍵的值,若是值不在字典中返回default值
五、key in dict
#若是鍵在字典dict
裏返回true
,不然返回false
六、dict.keys()
# 返回一個迭代器,可使用 list() 來轉換爲列表
dict.values()
七、dict.items()
# 以列表返回可遍歷的(鍵, 值) 元組數組
八、dict.setdefault(key,default=None)
# 和get()相似, 但若是鍵不存在於字典中,將會添加鍵並將值設爲default
九、v.update(dict)
# 把字典dict的鍵/值對更新到字典v裏
十、dict.popitem()
# 隨機返回並刪除字典中的最後一對鍵和值
十一、d = dict.pop('key','default')
刪除字典給定鍵 key 所對應的值,返回值爲被刪除的值。key值必須給出。 不然,返回default值
集合是一個無序的不重複的元素序列
可使用大括號 { } 或者 set() 函數建立集合,注意:建立一個空集合必須用 set() 而不是 { },由於 { } 是用來建立一個空字典。
A = set(123,)
添加元素:
s.add(x)
#若是元素已存在,則不進行任何操做s.update(x)
#能夠添加列表,元組字典等,用逗號隔開移除元素:
s.remove(x)
#若是元素不存在,則報錯s.discard(x)
#若是元素不存在,則不會發生錯誤s.pop()
#隨機刪除一個元素一、1 in s
#在集合內返回Ture
,不然返回False
二、s.add(1)
# 增長元素
三、s.update({6,7,})
# 增長多個元素
四、s.remove(5)
#刪除指定元素
五、s.pop()
#依次從左邊刪除元素
六、集合運算
並集 s.union(s1)
全部不重複的打印出來
s|s1
交集 s.intersection(s1)
相交的打印出來
s.&d
差集 s.difference(s1)
我有你沒有
s-s1
s1.difference(s)
交叉補集
s.symmetric_difference(s1)
s^s1