日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

?Python列表的切片取值詳解_python

作者:安迪python學習筆記 ? 更新時間: 2022-11-10 編程語言

1. 列表的切片

索引取值可以從列表中取出1個元素。

如果要從列表中取出多個元素,可以用列表的切片方法。

列表的切片語法和字符串的切片語法相同。

2. 切片的語法

【語法】

列表[star:end:step]

列表[開始字符:結束字符:步長]

列表切片取值由4部分構成:

列表名。

英文中括號。

3個參數。

3個參數之間用英文冒號分隔。

參數start:表示要取的第1元素的索引(包括該元素),如果不指定,則默認為0

參數end:表示要取的最后1個元素的索引(不包括該元素),如果不指定,則默認為列表的長度。

參數step:表示切片的步長。如果省略,則默認為1,當省略該步長時,最后一個冒號也可以省略。

步長我的理解就是向前或向后走幾步,可以是正整數,也可以是負整數。

步長為1,表示向前走1步,那就是依次取值。

步長為2,表示一次性向前走2步,那就是要跳過1個字符。

步長為-2,表示一次性向后退2步,即從右往左跳過1個字符。

【重點提示】切片取值時包括開始字符,不包括結束字符,簡單記憶為含前不含后

3. 切片取值示例

3.1 步長為1的切片取值

# 新建一個str列表
str_list = ["當歸", "人參",  "黃芪", "紅棗", "枸杞"]

print(str_list[0:1:1])
print("列表切片取值得到的數據類型仍然是列表:", type(str_list[0:1:1]), '\n')

print(str_list[1:4:1])
print("列表切片取值得到的數據類型仍然是列表:", type(str_list[1:4:1]), '\n')

print(str_list[2:5:1])
print("列表切片取值得到的數據類型仍然是列表:", type(str_list[2:5:1]), '\n')

【終端輸出】

['當歸']
列表切片取值得到的數據類型仍然是列表: <class 'list'>?

['人參', '黃芪', '紅棗']
列表切片取值得到的數據類型仍然是列表: <class 'list'>?

['黃芪', '紅棗', '枸杞']
列表切片取值得到的數據類型仍然是列表: <class 'list'>?

【2:5:1代碼解析】

start=2即開始元素的索引為2,索引2對應列表的第3個元素,即元素黃芪

end=5即結束元素的索引為5,索引5對應列表的第6個元素;上述列表只有5個元素,沒有第6個元素,因此取值范圍為整個列表。

step=1即步長為1,即元素間隔為1,間隔為1表示可以連續取值。

注意切片的語法:含前不含后,即含開始元素,不含結束元素。

【步長為1時冒號和步長可以省略不寫】

# 新建一個str列表
str_list = ["當歸", "人參",  "黃芪", "紅棗", "枸杞"]

print(str_list[0:1])

print(str_list[1:4])

print(str_list[2:5])

【終端輸出】

['當歸']
['人參', '黃芪', '紅棗']
['黃芪', '紅棗', '枸杞']

3.2 步長為3的切片取值

# 新建一個str列表
str_list = ["當歸", "人參",  "黃芪", "紅棗", "枸杞"]

print(str_list[0:4:3])
print("列表切片取值得到的數據類型仍然是列表:", type(str_list[0:1]), '\n')

【終端輸出】

['當歸', '紅棗']
列表切片取值得到的數據類型仍然是列表: <class 'list'>?

【0:4:3代碼解析】

start=0即開始元素的索引為0,索引0對應列表的第1個元素,即元素當歸

end=4即結束元素的索引為4,索引4對應列表的第5個元素,即元素枸杞

注意切片的語法:含前不含后,即含開始元素,不含結束元素枸杞

step=3即步長為3,步長為3可以理解成一次性向前走3步,那就是要跳過2個字符。

注意切片的語法:含前不含后,即含開始元素,不含結束元素。

3.3 負索引取值

# 新建一個str列表
str_list = ["當歸", "人參",  "黃芪", "紅棗", "枸杞"]

print(str_list[-5:-1:3])

【終端輸出】

['當歸', '紅棗']

# 新建一個str列表
str_list = ["當歸", "人參",  "黃芪", "紅棗", "枸杞"]

print(str_list[-5:-2:3])

【終端輸出】

['當歸']

# 新建一個str列表
str_list = ["當歸", "人參",  "黃芪", "紅棗", "枸杞"]

print(str_list[-5:-2:2])

【終端輸出】

['當歸', '黃芪']

# 新建一個str列表
str_list = ["當歸", "人參",  "黃芪", "紅棗", "枸杞"]

print(str_list[-2:-5:-2])

【終端輸出】

['紅棗', '人參']

-2到-5是從右往左,從右往左步長應該為負整數,下面的代碼為正整數,因此沒有取到任何元素。

# 新建一個str列表
str_list = ["當歸", "人參",  "黃芪", "紅棗", "枸杞"]

print(str_list[-2:-5:2])

【終端輸出】

[]

原文鏈接:https://blog.csdn.net/weixin_63986098/article/details/126877976

欄目分類
最近更新