零基礎(chǔ)小白學(xué)習(xí):python之最詳細(xì)列表篇

簡介

列表由一系列按特定順序排列的元素組成,可以將字母表中的所有字母,數(shù)字 (0 - 9) ,也可以將任何東西加入列表中,其中的元素之間可以沒有任何關(guān)系。

python中,用方括號 ( [ ] )來表示列表,并使用逗號 來分割其中的元素。

訪問列表元素

# 列表是有序集合, 因此要訪問列表的任何元素, 只需要將該元素的位置或者索引告訴python即可

names = ['python', 'java', 'javascript', 'c', 'c++', 'c#', 'go']

# 訪問索引為0的元素, 即是第一個元素,眾所周知大多數(shù)編程語言第一個元素的索引是 0 而不是 1

print(names[0])

# 控制臺輸出 python

# 訪問索引為 1 的元素

print(names[1])

# 控制臺輸出 java

# 訪問索引為 2 的元素

print(names[2])

# 控制臺輸出 javascript

# 訪問索引為 3 的元素

print(names[3])

# 控制臺輸出 c

復(fù)制代碼

# python為訪問最后一個列表元素提供了一個特殊的語法。 通過將索引指定為 -1, python會返回最后一個列表元素

print(names[-1])

# 控制臺輸出 go

# 那么以此類推,-2, 返回倒數(shù)第二個列表元素

print(names[-2])

# 控制臺輸出 c#

復(fù)制代碼

?

如果大家在學(xué)習(xí)中遇到困難,想找一個python學(xué)習(xí)交流環(huán)境,可以加入我們的python裙,裙號930900780,領(lǐng)取python學(xué)習(xí)資料,會節(jié)約很多時間,減少很多遇到的難題。

index()方法語法:

# index()方法語法:

#

# list.index(x[, start[, end]])

# 參數(shù)

# x-- 查找的對象。

# start -- 可選,查找的起始位置。

# end? -- 可選,查找的結(jié)束位置。

# 返回值

# 該方法返回查找對象的索引位置,如果沒有找到對象則拋出異常。

# arr = ['python', 'css', 'html', 'java']

# print(arr.index('java'))

# 控制臺輸出 3

# print(arr.index('java', 0, 2))

# 沒有拋出異常

# Traceback (most recent call last):

#? File "C:\Users\Administrator\Desktop\py\py_列表.py", line 49, in <module>

#? ? print(arr.index('java', 0, 2))

# ValueError: 'java' is not in list

復(fù)制代碼

修改列表元素

修改列表元素的語法 與 訪問列表元素的語法類似, 要修改列表元素, 可以指定列表名和要修改的元素索引, 在指定該元素的新值。

List = ['人生', '苦短', '我用', 'python']

# 修改索引為 1 的元素

# 列表名 List 索引位置 1 新值 短短

List[1] = '短短'

print(List)

# 控制臺輸出 ['人生', '短短', '我用', 'python']

# 修改索引為 3 的元素

# 列表名 List 索引位置 3 新值 java

List[3] = 'java'

print(List)

# 控制臺輸出 ['人生', '短短', '我用', 'java']

復(fù)制代碼

列表添加元素

append() 方法用于在列表末尾添加新的列表元素

# append()方法語法:list.append(obj)

# 參數(shù)

# obj -- 添加到列表末尾的元素。

# 返回值

# 該方法無返回值,但是會修改原來的列表。

arr = ['直男', '暖男']

# 添加元素

arr.append('渣男')

print(arr)

# 控制臺輸出 ['直男', '暖男', '渣男']

復(fù)制代碼

在列表中插入元素

?

insert() 方法用于將指定元素插入列表的指定位置。

# insert方法可以在列表的任意位置添加新元素,需要指定新元素的索引和值即可

# insert()方法語法:

#

# list.insert(index, item)

# 參數(shù)

# index --? 元素 item 需要插入的索引位置。

# item? -- 要插入列表中的對象。

# 返回值

# 該方法沒有返回值,但會在列表指定位置插入對象。

arr = ['蘿莉音', '御姐音']

arr.insert(2, '鐵觀音')

print(arr)

# 控制臺輸出 ['蘿莉音', '御姐音', '鐵觀音']

復(fù)制代碼

在列表中同時插入多個元素

extend()

extend()

# extend() 函數(shù)用于在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)。

#

# 語法

# extend()方法語法:

#

# list.extend(seq)

# 參數(shù)

# seq -- 元素列表。

# 返回值

# 該方法沒有返回值,但會在已存在的列表中添加新的列表內(nèi)容。

arr = ['py']

arr.extend(['c', 'c++'])

print(arr)

# 控制臺輸出 ['py', 'c', 'c++']

復(fù)制代碼

列表中刪除元素

del 語句刪除元素

# 使用 del 語句可以刪除任何位置處的列表元素, 條件是必須知道刪除元素的索引下標(biāo)

# 語法

# del 列表[索引] list[1]

arr = ['你', '我', '她']

del arr[1]

print(arr)

# 控制臺輸出 ['你', '她']

# 使用 del 語句將值從列表中刪除后, 你就無法訪問了。

復(fù)制代碼

pop() 刪除元素

# pop() 函數(shù)用于移除列表中的一個元素(默認(rèn)最后一個元素),并且返回該元素的值。

#

# 語法

# pop()方法語法:

#

# list.pop([index=-1])

# 參數(shù)

# obj -- 可選參數(shù),要移除列表元素的索引值,不能超過列表總長度,默認(rèn)為 index=-1,刪除最后一個列表值。

arr = ['英短', '美短', '銀漸層']

# 默認(rèn)刪除最后一個元素

arr.pop()

print(arr)

# 控制臺輸出 ['英短', '美短']

# 刪除索引為0的元素

arr.pop(0)

print(arr)

復(fù)制代碼

remove() 根據(jù)值刪除元素

# remove() 函數(shù)用于移除列表中某個值的第一個匹配項。

#

# 語法

# remove()方法語法:

#

# list.remove(item)

# 參數(shù)

# item -- 列表中要移除的對象。

# 返回值

# 該方法沒有返回值但是會移除列表中的某個值的第一個匹配項。

arr = ['哈士奇', '金毛', '阿拉斯加', '柯基']

# 根據(jù) 值刪除

arr.remove('金毛')

print(arr)

# 控制臺輸出 ['哈士奇', '阿拉斯加', '柯基']

arr.remove('阿拉斯加')

print(arr)

# 控制臺輸出 ['哈士奇', '柯基']

# remove方法只刪除第一個指定的值,如果要刪除的值可能在列表中出現(xiàn)多次, 就需要使用循環(huán)來刪除 元素.

復(fù)制代碼

刪除 保留列表名稱,清空里面的值

clear()

# clear() 函數(shù)用于清空列表,類似于 del a[:]。

#

# 語法

# clear()方法語法:

#

# list.clear()

# 參數(shù)

# 無

# 返回值

# 該方法沒有返回值。

arr = ['asd', 'sda', 'dasasd', 'dd']

arr.clear()

print(arr)

# 控制臺輸出 []

復(fù)制代碼

sort() 排序

# sort() 永久性地修改了列表元素的排列順序

# sort() 函數(shù)用于對原列表進(jìn)行排序,如果指定參數(shù),則使用比較函數(shù)指定的比較函數(shù)。

#

# 語法

# sort()方法語法:

#

# list.sort( key=None, reverse=False)

#

# 參數(shù)

# key? ? -- 主要是用來進(jìn)行比較的元素,只有一個參數(shù),具體的函數(shù)的參數(shù)就是取自于可迭代對象中,指定可迭代對象中的一個元素來進(jìn)行排序。

# reverse -- 排序規(guī)則,reverse = True 降序, reverse = False 升序(默認(rèn))。

# 返回值

# 該方法沒有返回值,但是會對列表的對象進(jìn)行排序。

arr = ['a', 'c', 'd', 'b']

arr.sort()

print(arr)

# 控制臺輸出 ['a', 'b', 'c', 'd']

arr = [1, 4, 6, 5, 3, 2]

arr.sort()

print(arr)

# 控制臺輸出 [1, 2, 3, 4, 5, 6]

復(fù)制代碼

sorted()

# sorted() 函數(shù)對所有可迭代的對象進(jìn)行排序操作。

#

# sort 與 sorted 區(qū)別:

#

# sort 是應(yīng)用在 list 上的方法,sorted 可以對所有可迭代的對象進(jìn)行排序操作。

#

# list 的 sort 方法返回的是對已經(jīng)存在的列表進(jìn)行操作,無返回值,而內(nèi)建函數(shù) sorted 方法返回的是一個新的 list,而不是在原來的基礎(chǔ)上進(jìn)行的操作。

#

# 語法

# sorted 語法:

#

# sorted(iterable, cmp=None, key=None, reverse=False)

# 參數(shù)說明:

#

# iterable -- 可迭代對象。

# cmp -- 比較的函數(shù),這個具有兩個參數(shù),參數(shù)的值都是從可迭代對象中取出,此函數(shù)必須遵守的規(guī)則為,大于則返回1,小于則返回-1,等于則返回0。

# key -- 主要是用來進(jìn)行比較的元素,只有一個參數(shù),具體的函數(shù)的參數(shù)就是取自于可迭代對象中,指定可迭代對象中的一個元素來進(jìn)行排序。

# reverse -- 排序規(guī)則,reverse = True 降序 , reverse = False 升序(默認(rèn))。

# 返回值

# 返回重新排序的列表。

arr = [('b', 2), ('a', 1), ('c', 3), ('d', 4)]

sorted(arr, key=lambda x: x[1])? # 利用key

print(arr)

# [('a', 1), ('b', 2), ('c', 3), ('d', 4)]

復(fù)制代碼

反轉(zhuǎn)列表元素

# reverse() 永久性地修改列表元素排列順序

# reverse() 函數(shù)用于反向列表中元素。

#

# 語法

# reverse()方法語法:

#

# list.reverse()

# 參數(shù)

# 沒有參數(shù)

# 返回值

# 該方法沒有返回值,但是會對列表的元素進(jìn)行反向排序。

arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]

# 將列表元素反轉(zhuǎn)

arr.reverse()

print(arr)

# 控制臺輸出 [9, 8, 7, 6, 5, 4, 3, 2, 1]

# 回復(fù)原來的排列順序, 在調(diào)用一次reverse()

arr.reverse()

print(arr)

# 控制臺輸出 [1, 2, 3, 4, 5, 6, 7, 8, 9]

復(fù)制代碼

列表的長度

# len()

# Python len() 方法返回對象(字符、列表、元組等)長度或項目個數(shù)。

#

# 語法

# len()方法語法:

#

# len( s )

# 參數(shù)

# s -- 對象。

# 返回值

# 返回對象長度。

arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]

print(len(arr))

# 控制臺輸出 9

Str = '444444444444444444'

print(len(Str))

# 控制臺輸出 18

復(fù)制代碼

復(fù)制列表

copy()

# copy()

# copy() 函數(shù)用于復(fù)制列表,類似于 a[:]。

#

# 語法

# copy()方法語法:

#

# list.copy()

# 參數(shù)

# 無。

# 返回值

# 返回復(fù)制后的新列表。

arr = ['aaa', 'bbb', 'ccc']

arr2 = arr.copy()

print(arr2)

# 控制臺輸出 ['aaa', 'bbb', 'ccc']

復(fù)制代碼

加油哦!!!

這里多說一句,小編是一名python開發(fā)工程師,這里有我自己整理了一套最新的python系統(tǒng)學(xué)習(xí)教程,包括從基礎(chǔ)的python腳本到web開發(fā)、爬蟲、數(shù)據(jù)分析、數(shù)據(jù)可視化、機器學(xué)習(xí)等。想要這些資料的可以進(jìn)裙930900780領(lǐng)取。

本文章素材來源于網(wǎng)絡(luò),如有侵權(quán)請聯(lián)系刪除。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容