列表 元祖 字典 集合一 、列表(list)
在python中列表是可變的序列。在形式上列表的所有元素都放到乙個中括號中 兩個相鄰的元素使用逗號隔開小寫的 , 逗號
在內容上,列表中可以放置任意型別的元素在列表中,並且同乙個列表中元素的型別可以不同,因為他們之間沒有任何的關係。 列表是非常的靈活的
列表在以後的開發中是使用最常見的
列表常用的操作 增 刪 改 查
建立乙個列表
可以直接建立賦值乙個列表 也可以直接建立乙個空列表
舉例:list1 = ['小黑',[['小黃'],'小白'],'灰灰',15,15.8] #直接賦值建立乙個列表 列表中還可以有列表 在有列表 也可以放置其他資料型別,整形,浮點型
print(type(list1)) #這裡查詢一下list1是什麼資料型別
輸出() #顯示是列表型別
list2 = #也可以直接建立乙個空的列表 空列表後期用處也挺多的 直接賦值乙個空列表就可以 ,不會報錯的
訪問列表元素
可以直接使用print內建函式輸出列表,這樣就直接顯示出來列表中的所有元素, 也可以使用下標索引的方式來訪問列表中的元素
舉例:list1 = ['小黑',[['小黃'],'小白'],'灰灰',15,15.8] #建立乙個列表
print(list1[1][1][1]) #這裡直接使用了下標索引的方式訪問了列表中的元素!看看顯示了什麼內容吧!
輸出(白) #沒錯 這裡直接根據索引訪問了索引值為1-1-1下標的值 就是白 因為索引是從0開始數數的
print(list1) #這裡就不多介紹了 直接顯示所有的內容
遍歷列表
1.遍歷列表可以直接使用 for 迴圈來實現 方法很簡單 下面舉例
for i in list1:
print(i)
輸出(小黑
'[['小黃'], '小白']
' 灰灰
1515.8 #這裡不方便顯示 就是這樣的顯示效果
2.使用 for 迴圈和enumerate() 函式實現 使用這種方法可以實現同時輸出索引值和元素的內容。
for i,p in enumerate(list1):
print(i+1,p) #這裡i 輸出的是list1 中對應元素索引的下標 p 顯示的是list1中的元素
輸出(1 小黑
2 [['小黃'], '小白']
3 灰灰
4 15
5 15.8 )
列表的新增
extend() 列表跟列表的合併 括號裡寫入要合併的列表
舉例1:
list1 = ['網管','網通','電信','移動','中信'] #建立乙個列表
print(list1)
輸出(['網管', '網通', '電信', '移動', '中信', 'python 最牛']) #方法非常的簡單好用 效果槓槓的!
舉例2:
list2 = ['足球','籃球','排球','羽毛球','桌球']
list1.extend(list2)
print(list1)
輸出(['網管', '網通', '電信', '移動', '中信', 'python 最牛', '足球', '籃球', '排球', '羽毛球', '桌球'])
太厲害了 直接就合併成為乙個列表了
列表的修改
列表修改元素也很簡單 直接根據索引的下標去更改直接賦值新的值就可以了
列表的刪除
列表的刪除可以直接使用索引的下標使用 del 來刪除指定下標的值
也可以使用內建函式的remove() 函式來刪除指定的元素 不過刪除的時候最好檢查一遍是否存在 不然會報錯的!
舉例:list2 = ['足球','籃球','排球','羽毛球','桌球']
list3 = '臭球
'if list2.count(list3)>0
#檢索是否存在 存在時大於0 執行下面的** list2.remove(list3)
print(list2)
列表常用操作
extend() 合併 將另乙個列表合併到前面的列表中
insert() 插入 將乙個新的元素插入到指定的索引下標位置
count() 查詢統計 查詢指定元素是否存在 不存在返回0 存在返回出現次數
index() 查詢 查詢指定的元素是否存在,返回元素的下標
remove() 刪除 刪除列表中的指定的元素 使用時要先查詢是否存在 不然不存在報錯
del() 刪除 根據索引下標 值 列表 都可以刪除 這個功能不常用 屬於強行刪除一切 毀田滅地的功能 小心使用
pop() 刪除 刪除並返回指定下標對應的值 有返回值
clear() 清空 清空整個列表 成為乙個空的列表
copy() 複製 複製乙個列表生成乙個新的列表
sort() 排序 採用規則 先大寫字母 然後小寫字母 可以是公升序也可以是降序 預設是公升序 括號裡新增(reverse = true)是降序
sorted() 排序 sort排序對中文的識別不是很好 所以中文排序建議使用sorted() 使用方法 pirnt(sorted(list1))
reverse() 翻轉 翻轉列表元素的公升序或降序
sum() 計算 計算列表元素中的總和 列表中需要都是整形或者浮點型才可以使用
len() 統計 統計列表的元素的個數 根據字元統計
最後補充乙個列表推導式 方便以後查閱
list1 = [random.randint(10,100) for i in range(10)] #生成隨機數10--100 的10個數
list2 = [int(i*0.5) for i in list1] #打折活動乘以0.5折
list3 = [i for i in list1 if i>20] #輸出大於20的值
list4 = [int(i*0.8) for i in list1 if i>20] #輸出大於20的值 乘以0.8折'
二維列表推導式
list5 = [[y for y in range(5)]for i in range(5)]
元祖元祖與列表類似,元祖用()小括號 元祖也可以放置任意型別的資料 不同之處是元祖的內容不能更改
但是元祖之中的列表可以根據索引改變,但是改變的只是元祖中的列表元素,元祖是沒辦法改變的
元祖是不可變序列 ,列表是可變序列 即元祖中的元素不可以單獨修改,而列表則可以隨意修改
元祖的建立
tuple1 = () #建立跟列表的方法一樣 這裡不多介紹!
元祖的訪問
元祖的訪問跟列表同樣 可以根據索引下標訪問,也可以直接列印 for 迴圈 for enumerate()函式訪問
修改元祖
元祖是不可變序列,所以我們沒有辦法對他的單個元素進行修改, 但是元祖也不是完全不能修改的,我們可以對元祖直接重新賦值,形成乙個新的元祖
元祖可以使用 + 號給元祖新增新的元素
字典字典與列表類似,也是可變序列,不過與列表不同的是他是無序的可變序列, 儲存的內容是以 鍵-值對 的形式存放的,類似於新華字典,它可以把拼音和漢字關聯起來
通過音節表快速的找到想要的漢子, 其中新華字典音節表相當於鍵(key) 對應的漢子相當於值(value) 鍵是唯一的。而值可以有多個。
列表 元祖 字典
形如list1 cat 1,3.4 由 括起來的一組序列稱為列表,屬於可變資料型別。列表中的元素可以是任意資料型別,整型,浮點型,字串型別,甚至可以是列表 元祖或者字典。列表的操作 1 可使用下標獲取列表中的某個元素 例如 list1 0 2 負數下標以及切片獲取子列表 雖然下標是從0開始向上增長,...
列表 元祖 字典
建立列表 lis list s 創 建 列 表 迭代追加extend lis.extend 迭代追加extend lis 0 4 修 改 修改切片範圍的元素,從左開始,沒有對應的就沒有了 del lis 0 3 judge 迭代追加extend in lisprint judge ture lis ...
python 列表 元祖和字典
一 列表迴圈 names 哈哈 嘿嘿 while false i 0 元素下標 while i 如圖 for 迴圈做法 1.for i in range len names print names i 2.for i in names print i 1,2,5,7 是 以split 來分割,返回值...