您好,登錄后才能下訂單哦!
序列是Python中最基本的數據結構。
包括字符串,列表,元組,Unicode字符串,buffer對象,xrange對象。
序列中的每個元素都分配一個數字,即它的索引
第一個索引是0,第二個索引是1,依此類推。
列表
一個方括號內的逗號分隔值
列表中可以存放不同的數據類型。例:[1,1.2,True,'str',[2,False]]
元組
與列表類似,不同之處在于元組的元素不能修改。
元組使用小括號,列表使用方括號。例:(1,1.2,True,'str',[2,False])
列表的定義
一個方括號內的逗號分隔值
列表中可以存放不同的數據類型。例:
list_define=[1,1.2,True,'str',[2,False]]
list_define=[] ##定義空列表
元組的定義
與列表類似,不同之處在于元組的元素不能修改。
元組使用小括號,列表使用方括號。
元組中只包含一個元素時,需要在元素后面添加逗號例:
tuple_define=(1,1.2,True,'str',[2,False])
tuple_define=() ##定義空元組,元組中只有一個元素時需加上逗號
索引
list[0] ##list中的第一元素
list[-1] ##list中的最后一個元素
list[:] ##返回包含list中的所有元素的列表
list[1:] ##返回包含list中從第二個元素開始的所有元素的列表
list[:2] ##返回包含list中倒數第二個元素及之前的元素的列表
list[::-1] ##返回包含list中倒序元素排列的列表切片
list[0] ##list中的第一元素
list[-1] ##list中的最后一個元素
list[:] ##返回包含list中的所有元素的列表
list[1:] ##返回包含list中從第二個元素開始的所有元素的列表
list[:2] ##返回包含list中倒數第二個元素及之前的元素的列表
list[::-1] ##返回包含list中倒序元素排列的列表重復
list*2 ##返回兩遍list
連接
list1 + list2 ##拼接list1和list2,返回拼接后的列表
嵌套
list[4][0] ##第五個元素[2,False]中的第一個元素
成員操作
a in list ##a存在于list中返回True,否則返回False a not in list ##a不存在于list中返回True,否則返回False
迭代
for i in list ##遍歷list中的元素
列表的常用方法
list.attend('str') ##追加一個成員在列表list的末尾
list.extend(list2) ##追加一個list2在列表的末尾
list.insert(n,'str') ##將'str'插入列表list至索引為n的位置
list.pop(n) ##彈出(刪除并返回)list中索引為n的元素
list.remove('str') ##刪除list中的元素'str'
list.clear() ##清空list
del list[0] ##刪除list中第一個元素并釋放內存
list.count('str') ##返回元素'str'出現的次數
list.index('str',n,m) ##返回索引值在n~m之間元素第一次出現'str'的索引值
list.sort(reverse=True) ##返回按照ASCII排序的列表
list.sort(key=str.lower) ##返回按照小寫字母排序的列表
list.reserse() ##逆序排列列表list,無返回值
list.copy() ##復制整個列表到新的內存地址中去并返回list
min,*middle,max = list ##返回首個,除去首尾的列表,和末尾的三個值元組的常用方法
tuple.index(a) ##返回a在tuple中第一次出現的索引值
tuple.count(a) ##返回a在tuple中出現的次數
由于元組屬于不可變數據類型,因此不具有增刪改插的方法
- 交換變量值
a = 1
b = 2
a,b = b,a- 批量賦值
a,b,c=(1,2,3)- 計分器
scores =[100,90,80,70,60]
scores = sorted(scores)
min,*middle,max = scores
集合(set)是**一個無序的不重復元素序列**。
可以使用大括號 { } 或者 set() 函數創建集合
注意:創建一個空集合必須用 set() 而不是 { },因為 { } 是用來創建一個空字典。
定義
set = {1,2,3}
set = {[]}成員操作符
s in set ##s存在于set返回True,否則返回False
s not in set ##s不存在于set返回True,否則返回False迭代
for i in set: ##利用i遍歷set里的成員
for i,v in enumerate(set) ##i遍歷(索引),v遍歷成員
set.add(s) ##添加s到set集合中返回添加后的集合
set.pop(s) ##刪除set集合中的s返回刪除的元素(默認第一個)
set.remove(s) ##刪除set集合中的s,無返回值,set中不存在s會報錯
set.discard(s) ##刪除set集合中的s,無返回值并集
set1.union(set2) ##返回set1和set2的交集
set1|set2 ##同上交集
set1&set2 ##返回set1和set2的交集
set1.isdisjoint(set2) ##set1和set2相交返回True,否則返回False差集
set1-set2 ##返回set1和set2的差集
set1.difference(set2) ##同上對等差分
set1^set2 ##返回set1和set2的對等差分
set1.symmetric_difference(set2) ##同上子集和超集
set1.issubset(set2) ##set1是set2的子集返回True,否則返回False
set1.issuperset(set2) ##set1是set2的超集返回True,否則返回False
key-value 鍵值對應存儲的一種數據結構
- 序列是以連續的整數為索引,字典以關鍵字為索引
- 關鍵字可以是任意不可變類型,通常用字符串或數值。
- 理解字典的最佳方式是把它看做無序的鍵=>值對集合。在同一個字典之內,關鍵字必須是互不相同。
字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中
定義
一對大括號創建一個空的字典:{} dict = { 'key1':value1, 'key2':value2, 'key3':value3 } {}.fromkeys({key1,key2},'str') ##{}.fromkeys()第一個參數可以是list/tuple/str/set,所有key的value值一致 d = dict(key1=value1,key2=value2) ##工廠函數定義
d = { 'key': { 'key01':value1, 'key02':value2, 'key03':value3 } }
- 字典不支持索引/切片/重復/連接
- 成員操作符判斷的是字典中的key
- for循環默認遍歷字典的key值
- 可通過傳遞key值遍歷字典的value值
增加元素
d['key']=value ##key存在則更新,否則增加新的key-value對 dict2 ={ 'key1':value1, 'key2':value2 } d.update(dict2) ##將dict2的key-value對加入d中 d.update(key1=value1,key2=value2) ##增加多個key-value對,這里key只支持str類型 d.setdefault(key,value) ##如果key存在則不改變,否則增加新的key-value對
刪除元素
del d['key'] ##刪除對應key的key-value值 d.pop('key') ##刪除對應key的key-value值,返回對應的value值 d.popitem() ##默認刪除最后一個key-value值,返回對應的value值 d.clear() ##清空字典
查看和修改
d.keys() ##顯示d中的keys d.values() ##顯示d中的values d.get('key',0) ##存在key返回對應value,不存在返回0
迭代
for i,v in d.items(): print(i,'---->',v) for i in d: print(i,'---->',d[i])
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。