
Python列表(list)、字典(dict)、字符串(string)基本操作
這篇文章主要介紹了Python列表(list)、字典(dict)、字符串(string)基本操作小結,本文總結了最基本最常用的一些操作,需要的朋友可以參考下。
創建列表
代碼如下:
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 列表高級操作/技巧
產生一個數值遞增列表
代碼如下:
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內置類型
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.append(var) #追加元素
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的復制
代碼如下:
L1 = L #L1為L的別名,用C來說就是指針地址相同,對L1操作即對L操作。函數參數就是這樣傳遞的
L1 = L[:] #L1為L的克隆,即另一個拷貝。
list comprehension
[ <expr1> for k in L if <expr2> ]
2、dictionary: 字典(即C++標準庫的map)
復制代碼 代碼如下:
dict = {'ob1':'computer', 'ob2':'mouse', 'ob3':'printer'}
每一個元素是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
dictionary的復制
dict1 = dict #別名
dict2=dict.copy() #克隆,即另一個拷貝。
3、tuple:元組(即常量數組)
代碼如下:
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,只是找不到產生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
long(str) #變成長整型,
long(str,base) #變成base進制長整型,
字符串的格式化(注意其轉義字符,大多如C語言的,略)
str_format % (參數列表) #參數列表是以tuple的形式定義的,即不可運行中改變
>>>print ""%s's height is %dcm" % ("My brother", 180)
#結果顯示為 My brother's height is 180cm
。。。。。。。。。。。。。。。。。。
list 和 tuple 的相互轉化
tuple(ls)
list(ls)
數據分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
2025 年,數據如同數字時代的 DNA,編碼著人類社會的未來圖景,驅動著商業時代的運轉。從全球互聯網用戶每天產生的2.5億TB數據, ...
2025-05-27CDA數據分析師證書考試體系(更新于2025年05月22日)
2025-05-26解碼數據基因:從數字敏感度到邏輯思維 每當看到超市貨架上商品的排列變化,你是否會聯想到背后的銷售數據波動?三年前在零售行 ...
2025-05-23在本文中,我們將探討 AI 為何能夠加速數據分析、如何在每個步驟中實現數據分析自動化以及使用哪些工具。 數據分析中的AI是什么 ...
2025-05-20當數據遇見人生:我的第一個分析項目 記得三年前接手第一個數據分析項目時,我面對Excel里密密麻麻的銷售數據手足無措。那些跳動 ...
2025-05-20在數字化運營的時代,企業每天都在產生海量數據:用戶點擊行為、商品銷售記錄、廣告投放反饋…… 這些數據就像散落的拼圖,而相 ...
2025-05-19在當今數字化營銷時代,小紅書作為國內領先的社交電商平臺,其銷售數據蘊含著巨大的商業價值。通過對小紅書銷售數據的深入分析, ...
2025-05-16Excel作為最常用的數據分析工具,有沒有什么工具可以幫助我們快速地使用excel表格,只要輕松幾步甚至輸入幾項指令就能搞定呢? ...
2025-05-15數據,如同無形的燃料,驅動著現代社會的運轉。從全球互聯網用戶每天產生的2.5億TB數據,到制造業的傳感器、金融交易 ...
2025-05-15大數據是什么_數據分析師培訓 其實,現在的大數據指的并不僅僅是海量數據,更準確而言是對大數據分析的方法。傳統的數 ...
2025-05-14CDA持證人簡介: 萬木,CDA L1持證人,某電商中廠BI工程師 ,5年數據經驗1年BI內訓師,高級數據分析師,擁有豐富的行業經驗。 ...
2025-05-13CDA持證人簡介: 王明月 ,CDA 數據分析師二級持證人,2年數據產品工作經驗,管理學博士在讀。 學習入口:https://edu.cda.cn/g ...
2025-05-12CDA持證人簡介: 楊貞璽 ,CDA一級持證人,鄭州大學情報學碩士研究生,某上市公司數據分析師。 學習入口:https://edu.cda.cn/g ...
2025-05-09CDA持證人簡介 程靖 CDA會員大咖,暢銷書《小白學產品》作者,13年頂級互聯網公司產品經理相關經驗,曾在百度、美團、阿里等 ...
2025-05-07相信很多做數據分析的小伙伴,都接到過一些高階的數據分析需求,實現的過程需要用到一些數據獲取,數據清洗轉換,建模方法等,這 ...
2025-05-06以下的文章內容來源于劉靜老師的專欄,如果您想閱讀專欄《10大業務分析模型突破業務瓶頸》,點擊下方鏈接 https://edu.cda.cn/g ...
2025-04-30CDA持證人簡介: 邱立峰 CDA 數據分析師二級持證人,數字化轉型專家,數據治理專家,高級數據分析師,擁有豐富的行業經驗。 ...
2025-04-29CDA持證人簡介: 程靖 CDA會員大咖,暢銷書《小白學產品》作者,13年頂級互聯網公司產品經理相關經驗,曾在百度,美團,阿里等 ...
2025-04-28CDA持證人簡介: 居瑜 ,CDA一級持證人國企財務經理,13年財務管理運營經驗,在數據分析就業和實踐經驗方面有著豐富的積累和經 ...
2025-04-27數據分析在當今信息時代發揮著重要作用。單因素方差分析(One-Way ANOVA)是一種關鍵的統計方法,用于比較三個或更多獨立樣本組 ...
2025-04-25