python基礎語法迴圈巢狀和列表(二)
1.通用操作
##1.1 + 和*
-
‘+’ 是指列表之間可以進行拼接。
-
星號
‘*’ 可以將列表重複指定次數**(注意兩個列表不能做乘法運算,這裡說的是列表可以和整數做乘法運算,整數位2,說明列表重複兩次,整數位3,列表重複三次**。程式碼走起
list1=[0, 1, 2, 3, 4]
#乘法運算
print(list1*2)
[0, 1, 2, 3, 4, 0, 1, 2, 3, 4]#重複2次
print(list1*3)
[0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4]#重複3次
##1.2 in 和not in
in 和not in 都是用來檢查元素是否存在列表中。in是判斷存在列中,not in 判斷不存在列表中。
heros=['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人','美國隊長','蜘蛛俠','蜘蛛俠']
#in
print(1 in heros)#檢查1是否在列表中,是返回True
print(heros[0] in heros)檢查位置為0的元素是否在列表中。
False#1不存在列表中
True#存在列表中
# not in
print(heros[0] not in heros)#0位置上的元素是否不存在列表中
False# 返回False,說明存在列表中
1.3 len()
計算列表中的長度或者獲取列表中元素的個數
list1= [0,1,2,3,4]
list2=[5, 6, 7, 8, 9]
print(len(list1))
print(len(list3))
5
5
1.4 max()
獲取列表中的最大元素。
1.5 min()
獲取列表中的最小元素
1.6 list.index(x,start,end)
獲取指定元素在列表中的位置
x是指定元素
start:是指定尋找元素的起始位置;
end:是指尋找元素的結束位置
返回列表中指定元素的位置
heros = ['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人','美國隊長','蜘蛛俠','蜘蛛俠']
print(heros.index('蟻人',0,8))
4
注意:如果列表中有多個指定元素出現,使用list.index()獲取指定元素在列表中出現的第一次位置,獲取第一次位置虎就結束。
heros = ['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人','美國隊長','蜘蛛俠','蜘蛛俠']
print(heros.index('蜘蛛俠',0,9))
2#2為蜘蛛俠第一次出現的位置,後面位置的蜘蛛俠未出現。
1.7 list.count(x)
用於統計列表中指定元素出現的次數
list3=[10, 11, 12, 13, 14,12,12,12]
print(list3.count(12))
4#列表中的元素12在列表中出現了4次
2. 修改列表
修改列表主要是包括:想列表中新增元素和刪除元素。
新增元素方法分為:下標索引新增和切片新增
2.1 索引新增
#語法:
list[位置]=‘元素’
#案例
heros1 = ['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人']
heros1[0]='美國隊長'
print(heros1)
['美國隊長', '綠巨人', '蜘蛛俠', '豬豬俠', '蟻人']
2.2 切片新增
- 通過切片來替換元素大於原有的元素,多餘的元素依次往後延;
- 如果替換的元素小於原有的元素,原有被切片的元素變成替換的元素;
- 當切片設定了步長,原序列中的元素的個數必須和你切片的元素的個數保持一致。
#替換元素大於原有被替換的元素
heros1 = ['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人']
heros1[0:2]=['葫蘆娃','黑貓警長','黑豹']
print(heros1)
['葫蘆娃', '黑貓警長', '黑豹', '蜘蛛俠', '豬豬俠', '蟻人']#'鋼鐵俠','綠巨人'被替換,同時替換元素的個數多餘被替換元素,多的替換元素依次往後延。
#替換元素小於被替換元素
heros1 = ['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人']
heros1[0:2]=['葫蘆娃']
print(heros1)
['葫蘆娃', '蜘蛛俠', '豬豬俠', '蟻人']#替換的元素小於原有的元素,原有被切片的元素變成替換的元素
#案例:切片含有步長
heros1 = ['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人']
heros1[::2]=['葫蘆娃','美國隊長','孫悟空']
print(heros1)
['葫蘆娃', '綠巨人', '美國隊長', '豬豬俠', '孫悟空']
2.3 列表中刪除元素
(1)列表中刪除元素的方法,通過del(),沒有返回值。
(2)del結合切片來刪除
heros1 = ['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人']
del heros1[0]
print(heros1)
['綠巨人', '美國隊長', '豬豬俠', '孫悟空']#原列表中的0位置元素鋼鐵俠被刪除。
heros = ['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人','美國隊長']
del heros[1:3]
print(heros)
['鋼鐵俠', '豬豬俠', '蟻人', '美國隊長']#原列表中位置為1,2的元素被刪除
3. 列表的方法
3.1 append()向列表的最後新增一個元素
解釋,這個新新增的元素可以是一個單個元素,也可以是一個完整的列表。
區別於extend(iterable)
list1=[0, 1, 2, 3, 4]
heros1 = ['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人']
list2=[5, 6, 7, 8, 9]
list1.append(heros1)
list2.extend(heros1)
print(list1)
print(list2)
[0, 1, 2, 3, 4, ['鋼鐵俠', '綠巨人', '蜘蛛俠', '豬豬俠', '蟻人']]
[5, 6, 7, 8, 9, '鋼鐵俠', '綠巨人', '蜘蛛俠', '豬豬俠', '蟻人']
對比append()和extend(),我們可以發現,append()
是將一個列表單獨作為一個元素,直接加入原列表中,組成原列表中的新元素。
extend()是將新新增的序列新增到原列表中。—簡單的講就是擴充套件原序列
3.2 insert(arg1,arg2)
向列表指定位置插入一個元素
引數1: 要插入的位置
引數2:要插入的元素
list1=[0, 1, 2, 3, 4]
list1.insert(2,'孫悟空')
[0, 1, '孫悟空', 2, 3, 4]
3.3 extend(iterable)
使用一個新的序列來擴充套件當前序列(將新序列的元素新增到列表中),引數需要傳遞一個序列
list2=[5, 6, 7, 8, 9]
heros1 = ['鋼鐵俠','綠巨人','蜘蛛俠','豬豬俠','蟻人']
print(list2)
[5, 6, 7, 8, 9, '鋼鐵俠', '綠巨人', '蜘蛛俠', '豬豬俠', '蟻人']
3.4 pop()
根據索引刪除元素並返回刪除元素,需要接收返回的物件
list4=[10, 11,'蜘蛛俠',12, 13, 14,12,12,12,'阿珂']
a = list4.pop(2)#pop有返回值,需要接收
print(a)
蜘蛛俠
3.5 remove()
刪除指定元素,如果相同值的元素有多個,只會刪除第一個,沒有返回值。
list4=[10, 11,'蜘蛛俠',12, 13, 14,12,12,12,'阿珂']
list4.remove('蜘蛛俠')
print(list4)
[10, 11, 12, 13, 14, 12, 12, 12, '阿珂']
有沒有返回值,可以接收個物件,並列印物件,如果不存在返回值為NOne
3.6 reverse()
翻轉列表
list4=[10, 11,'蜘蛛俠',12, 13, 14,12,12,12,'阿珂']
list4.reverse()
print(list4)
['阿珂', 12, 12, 12, 14, 13, 12, '蜘蛛俠', 11, 10]
3.7 sort(key=None,reverse=False)
用來對列表中的元素進行排序,reverse為True為反序,False為正序。
list5 = list('abcdefg')
list5.sort(reverse=True)
print(list5)
['g', 'f', 'e', 'd', 'c', 'b', 'a']
4. 遍歷列表
是指將列表中的元素提取出來。
遍歷的方法主要是while迴圈和for迴圈
4.1 while遍歷迴圈
注意 當使用while迴圈時,條件更新表示式要在print()函式之後,否則報錯。即需要根據執行流程確定更新表示式的位置。
5. 錯題集
5.1列表之間不能做乘法運算
5.2. while迴圈遍歷列表
解決辦法:
將跟新表示式放在print之後
相關文章
- python基礎語法迴圈巢狀和列表(一)Python巢狀
- python怎麼迴圈巢狀Python巢狀
- Python的if else 巢狀 和forin while 迴圈Python巢狀While
- 【Python基礎】for迴圈語句Python
- python 字典和列表巢狀用法Python巢狀
- Python基礎-While迴圈語句PythonWhile
- react基礎之-- 列表迴圈React
- GaussDB SQL基礎語法示例-迴圈語句SQL
- python 利用 for ... else 跳出雙層巢狀迴圈Python巢狀
- Python基礎語法(二)Python
- python 基礎 迴圈Python
- python 基礎習題6--for迴圈和while迴圈PythonWhile
- 《零基礎看得懂的C語言入門教程 》——(九)C語言二維陣列與迴圈巢狀C語言陣列巢狀
- 【基礎題】【for迴圈】二重迴圈
- Python基礎(07):迴圈Python
- 《Python基礎教程第二版》第五章-條件、迴圈和其他語句(二)Python
- 第二課 Python基礎語法Python
- Python基礎之函式的巢狀Python函式巢狀
- MySQL Join原理分析(緩衝塊巢狀與索引巢狀迴圈)MySql巢狀索引
- 列表巢狀操作巢狀
- python基礎 while迴圈練習PythonWhile
- Python基礎學習之迴圈Python
- Python基礎語法Python
- Python 基礎語法Python
- Python基礎:語法基礎(3)Python
- python基礎語法—語句Python
- Python基礎:條件判斷 & 迴圈Python
- 展開巢狀列表巢狀
- 《Python基礎教程第二版》第二章-Python列表和元祖Python
- 『無為則無心』Python基礎 — 15、Python流程控制語句(for迴圈語句)Python
- Python的基礎語法Python
- python 基礎語法(三)Python
- Python基礎語法(一)Python
- Python基礎(06):if語法Python
- 使用 Python 迴圈建立多個列表Python
- python 元組,列表 迴圈遍歷Python
- 最佳化兩個簡單的巢狀迴圈巢狀
- java中如何將巢狀迴圈效能提高500倍Java巢狀