python中列表 字典等常用操作

2021-09-05 01:17:50 字數 3260 閱讀 6980

#附:python內建型別

##1、list:列表(即動態陣列,c++標準庫的vector,但可含不同型別的元素於乙個list中)

a = ["i","you","he","she"] 元素可為任何型別。

###下標:按下標讀寫,就當作陣列處理,以0開始,有負下標的使用

0第乙個元素,-1最後乙個元素,

-len第乙個元素,len-1最後乙個元素.

###取list的元素數量:

len(list) #list的長度。實際該方法是呼叫了此物件的__len__(self)方法。

###建立連續的list

l = range(1,5) #即 l=[1,2,3,4],不含最後乙個元素

l = range(1, 10, 2) #即 l=[1, 3, 5, 7, 9]

###list的方法

l.insert(index,var)

l.pop(var) #返回最後乙個元素,並從list中刪除之

l.remove(var) #刪除第一次出現的該元素

l.count(var) #該元素在列表中出現的個數

l.index(var) #該元素的位置,無則拋異常

l.extend(list) #追加list,即合併list到l上

l.sort() #排序

l.reverse() #倒序

list 操作符:,+,*,關鍵字del

a[1:] #片段操作符,用於子list的提取

[1,2]+[3,4] #為[1,2,3,4]。同extend()

[2]*4 #為[2,2,2,2]

del l[1] #刪除指定下標的元素

del l[1:3] #刪除指定下標範圍的元素

list comprehension

[ for k in l if ]

##2、dictionary: 字典(即c++標準庫的map)

dict =

每乙個元素是pair,包含key、value兩部分。key是integer或string型別,value 是任意型別。

鍵是唯一的,字典只認最後乙個賦的鍵值。

###dictionary的方法

d.get(key, 0) #同dict[key],多了個沒有則返回預設值,0。沒有則拋異常

d.has_key(key) #有該鍵返回true,否則false

d.keys() #返回字典鍵的列表

d.values() #以列表的形式返回字典中的值,返回值的列表中可包含重複元素

d.items() #將所有的字典項以列表方式返回,這些列表中的每一項都來自於(鍵,值),但是項在返回時並沒有特殊的順序

d.update(dict2) #增加合併字典

d.popitem() #得到乙個pair,並從字典中刪除它。已空則拋異常

d.clear() #清空字典,同del dict

d.copy() #拷貝字典

d.cmp(dict1,dict2) #第乙個大返回1,小返回-1,一樣返回0

### dict的遍歷:

for (k,v) in d.items():

##3、tuple:元組(即常量陣列)

元組中的元素值是不允許修改和刪除的。

tuple = ('a', 'b', 'c', 'd', 'e')

可以用list的 ,:操作符提取元素。就是不能直接修改元素。

###list 和 tuple 的相互轉化:

tuple(ls)

list(ls)

##4、string: 字串(即不能修改的字元list)

str = "hello my friend"

字串是乙個整體。如果你想直接修改字串的某一部分,是不可能的。

但我們能夠讀出字串的某一部分。

###子字串的提取

str[:6]

字串包含判斷操作符:in,not in

"he" in str

"she" not in str

###string模組,還提供了很多方法,如

s.find(substring, [start [,end]]) #可指範圍查詢子串,返回索引值,否則返回-1

s.rfind(substring,[start [,end]]) #反向查詢

s.index(substring,[start [,end]]) #同find,只是找不到產生valueerror異常

s.rindex(substring,[start [,end]])#同上反向查詢

s.count(substring,[start [,end]]) #返回找到子串的個數

s.lowercase()

s.capitalize() #首字母大寫

s.lower() #轉小寫

s.upper() #轉大寫

s.swapcase() #大小寫互換

s.split(str, ' ') #將string轉list,以空格切分

s.join(list, ' ') #將list轉string,以空格連線

###處理字串的內建函式

len(str) #串長度

cmp("my friend", str) #字串比較。第乙個大,返回1

max('abcxyz') #尋找字串中最大的字元

min('abcxyz') #尋找字串中最小的字元

###string的轉換

float(str) #變成浮點數,float("1e-1") 結果為0.1

int(str) #變成整型, int("12") 結果為12

int(str,base) #變成base進製整型數,int("11",2) 結果為2

###字串的格式化(注意其轉義字元,大多如c語言的,略)

str_format % (引數列表) #引數列表是以tuple的形式定義的,即不可執行中改變

print ""%s's height is %dcm" % ("my brother", 180)

#結果顯示為 my brother's height is 180cm

Python列表 字串 字典等常用操作

字典 len 字典 獲取字典的鍵值對數量 字典.keys 所有key列表 字典.values 所有value列表 字典.items 所有 key,value 元組列表 字典.pop key 刪除指定鍵值對,key不存在會報錯 字典.popitem 隨機刪除乙個鍵值對 字典.clear 清空字典 字典...

python列表,字典

1字串處理 s.startswith adfaas s這個字串是不是以adfaas開始 s.endswith adfaas s這個字串是不是以adfaas結束 s.find substring,start end 可指範圍查詢子串,返回索引值,否則返回 1 s.rfind substring,sta...

Python 列表 字典

陣列 只能儲存同一種資料型別的結構 元組tuple 定義列表 定義元組 元組被稱為被帶了緊箍咒的列表,那麼就證明元組與列表的功能類似,只是不如列表強大。元組是不可變的資料型別 不能修改元組中的元素 列表是可變資料型別,可以修改元素。那就有了增刪改查 拿出列表最後乙個元素,最後乙個元素是列表,再拿出列...