
Python列表(list)、字典(dict)、字符串(string)基本操作
這篇文章主要介紹了Python列表(list)、字典(dict)、字符串(string)基本操作小結(jié),本文總結(jié)了最基本最常用的一些操作,需要的朋友可以參考下。
創(chuàng)建列表
代碼如下:
sample_list = ['a',1,('a','b')]
Python 列表操作
代碼如下:
sample_list = ['a','b',0,1,3]
得到列表中的某一個值
代碼如下:
value_start = sample_list[0]
end_value = sample_list[-1]
刪除列表的第一個值
代碼如下:
del sample_list[0]
在列表中插入一個值
代碼如下:
sample_list[0:0] = ['sample value']
得到列表的長度
代碼如下:
list_length = len(sample_list)
列表遍歷
代碼如下:
for element in sample_list:
print 'element'
Python 列表高級操作/技巧
產(chǎn)生一個數(shù)值遞增列表
代碼如下:
num_inc_list = range(30)
#will return a list [0,1,2,...,29]
用某個固定值初始化列表
代碼如下:
initial_value = 0
list_length = 5
sample_list = [ initial_value for i in range(10)]
sample_list = [initial_value]*list_length
# sample_list ==[0,0,0,0,0]
附:python內(nèi)置類型
1、list:列表(即動態(tài)數(shù)組,C++標(biāo)準(zhǔn)庫的vector,但可含不同類型的元素于一個list中)
a = ["I","you","he","she"] #元素可為任何類型。
下標(biāo):按下標(biāo)讀寫,就當(dāng)作數(shù)組處理
以0開始,有負(fù)下標(biāo)的使用
0第一個元素,-1最后一個元素,
-len第一個元素,len-1最后一個元素
取list的元素數(shù)量
代碼如下:
len(list) #list的長度。實際該方法是調(diào)用了此對象的__len__(self)方法。
創(chuàng)建連續(xù)的list
代碼如下:
L = range(1,5) #即 L=[1,2,3,4],不含最后一個元素
L = range(1, 10, 2) #即 L=[1, 3, 5, 7, 9]
list的方法
代碼如下:
L.append(var) #追加元素
L.insert(index,var)
L.pop(var) #返回最后一個元素,并從list中刪除之
L.remove(var) #刪除第一次出現(xiàn)的該元素
L.count(var) #該元素在列表中出現(xiàn)的個數(shù)
L.index(var) #該元素的位置,無則拋異常
L.extend(list) #追加list,即合并list到L上
L.sort() #排序
L.reverse() #倒序
list 操作符:,+,*,關(guān)鍵字del
a[1:] #片段操作符,用于子list的提取
[1,2]+[3,4] #為[1,2,3,4]。同extend()
[2]*4 #為[2,2,2,2]
del L[1] #刪除指定下標(biāo)的元素
del L[1:3] #刪除指定下標(biāo)范圍的元素
list的復(fù)制
代碼如下:
L1 = L #L1為L的別名,用C來說就是指針地址相同,對L1操作即對L操作。函數(shù)參數(shù)就是這樣傳遞的
L1 = L[:] #L1為L的克隆,即另一個拷貝。
list comprehension
[ <expr1> for k in L if <expr2> ]
2、dictionary: 字典(即C++標(biāo)準(zhǔn)庫的map)
復(fù)制代碼 代碼如下:
dict = {'ob1':'computer', 'ob2':'mouse', 'ob3':'printer'}
每一個元素是pair,包含key、value兩部分。key是Integer或string類型,value 是任意類型。
鍵是唯一的,字典只認(rèn)最后一個賦的鍵值。
dictionary的方法
代碼如下:
D.get(key, 0) #同dict[key],多了個沒有則返回缺省值,0。[]沒有則拋異常
D.has_key(key) #有該鍵返回TRUE,否則FALSE
D.keys() #返回字典鍵的列表
D.values() #以列表的形式返回字典中的值,返回值的列表中可包含重復(fù)元素
D.items() #將所有的字典項以列表方式返回,這些列表中的每一項都來自于(鍵,值),但是項在返回時并沒有特殊的順序
D.update(dict2) #增加合并字典
D.popitem() #得到一個pair,并從字典中刪除它。已空則拋異常
D.clear() #清空字典,同del dict
D.copy() #拷貝字典
D.cmp(dict1,dict2) #比較字典,(優(yōu)先級為元素個數(shù)、鍵大小、鍵值大小)
#第一個大返回1,小返回-1,一樣返回0
dictionary的復(fù)制
dict1 = dict #別名
dict2=dict.copy() #克隆,即另一個拷貝。
3、tuple:元組(即常量數(shù)組)
代碼如下:
tuple = ('a', 'b', 'c', 'd', 'e')
可以用list的 [],:操作符提取元素。就是不能直接修改元素。
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,只是找不到產(chǎn)生ValueError異常
S.rindex(substring,[start [,end]])#同上反向查找
S.count(substring,[start [,end]]) #返回找到子串的個數(shù)
S.lowercase()
S.capitalize() #首字母大寫
S.lower() #轉(zhuǎn)小寫
S.upper() #轉(zhuǎn)大寫
S.swapcase() #大小寫互換
S.split(str, ' ') #將string轉(zhuǎn)list,以空格切分
S.join(list, ' ') #將list轉(zhuǎn)string,以空格連接
處理字符串的內(nèi)置函數(shù)
代碼如下:
len(str) #串長度
cmp("my friend", str) #字符串比較。第一個大,返回1
max('abcxyz') #尋找字符串中最大的字符
min('abcxyz') #尋找字符串中最小的字符
string的轉(zhuǎn)換
代碼如下:
float(str) #變成浮點數(shù),float("1e-1") 結(jié)果為0.1
int(str) #變成整型, int("12") 結(jié)果為12
int(str,base) #變成base進(jìn)制整型數(shù),int("11",2) 結(jié)果為2
long(str) #變成長整型,
long(str,base) #變成base進(jìn)制長整型,
字符串的格式化(注意其轉(zhuǎn)義字符,大多如C語言的,略)
str_format % (參數(shù)列表) #參數(shù)列表是以tuple的形式定義的,即不可運行中改變
>>>print ""%s's height is %dcm" % ("My brother", 180)
#結(jié)果顯示為 My brother's height is 180cm
。。。。。。。。。。。。。。。。。。
list 和 tuple 的相互轉(zhuǎn)化
tuple(ls)
list(ls)
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動態(tài)隨機(jī)一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫)處理 Excel 數(shù)據(jù)時,“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗與 t 檢驗:差異、適用場景與實踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計學(xué)領(lǐng)域,假設(shè)檢驗是驗證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對象的 text 與 content:區(qū)別、場景與實踐指南 在 Python 進(jìn)行 HTTP 網(wǎng)絡(luò)請求開發(fā)時(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請求工具對比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長浮點數(shù)據(jù)的科學(xué)計數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長浮點數(shù)據(jù)時的科學(xué)計數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運營問題、提升執(zhí)行效率的核心手段,其價值 ...
2025-09-12用 SQL 驗證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計” 與 “用戶體驗 ...
2025-09-11塔吉特百貨孕婦營銷案例:數(shù)據(jù)驅(qū)動下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價值 在數(shù)據(jù)驅(qū)動決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實踐到業(yè)務(wù)價值挖掘 在數(shù)據(jù)分析場景中,聚類分析作為 “無監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價值導(dǎo)向 統(tǒng)計模型作為數(shù)據(jù)分析的核心工具,并非簡單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10