Python列表操作

2022-02-21 07:28:05 字數 2549 閱讀 6506

目錄不知道大家是否注意到,剛才我們講到的字串型別(str)和之前我們講到的數值型別(int和float)有一些區別。數值型別是標量型別,也就是說這種型別的物件沒有可以訪問的內部結構;而字串型別是一種結構化的、非標量型別,所以才會有一系列的屬性和方法。接下來我們要介紹的列表(list),也是一種結構化的、非標量型別,它是值的有序序列,每個值都可以通過索引進行標識,定義列表可以將列表的元素放在中,多個元素用,進行分隔,可以使用for迴圈對列表元素進行遍歷,也可以使用或[:]運算子取出列表中的乙個或多個元素。

下面的**演示了如何定義列表、如何遍歷列表以及列表的下標運算。

list1 = [1, 3, 5, 7, 100]

print(list1) # [1, 3, 5, 7, 100]

# 乘號表示列表元素的重複

list2 = ['hello'] * 3

print(list2) # ['hello', 'hello', 'hello']

# 計算列表長度(元素個數)

print(len(list1)) # 5

# 下標(索引)運算

print(list1[0]) # 1

print(list1[4]) # 100

# print(list1[5]) # indexerror: list index out of range

print(list1[-1]) # 100

print(list1[-3]) # 5

list1[2] = 300

print(list1) # [1, 3, 300, 7, 100]

# 通過迴圈用下標遍歷列表元素

for index in range(len(list1)):

print(list1[index])

# 通過for迴圈遍歷列表元素

for elem in list1:

print(elem)

# 通過enumerate函式處理列表之後再遍歷可以同時獲得元素索引和值

for index, elem in enumerate(list1):

print(index, elem)

下面的**演示了如何向列表中新增元素以及如何從列表中移除元素。

list1 = [1, 3, 5, 7, 100]

# 新增元素

list1.insert(1, 400)

# 合併兩個列表

# list1.extend([1000, 2000])

list1 += [1000, 2000]

print(list1) # [1, 400, 3, 5, 7, 100, 200, 1000, 2000]

print(len(list1)) # 9

# 先通過成員運算判斷元素是否在列表中,如果存在就刪除該元素

if 3 in list1:

list1.remove(3)

if 1234 in list1:

list1.remove(1234)

print(list1) # [1, 400, 5, 7, 100, 200, 1000, 2000]

# 從指定的位置刪除元素

list1.pop(0)

list1.pop(len(list1) - 1)

print(list1) # [400, 5, 7, 100, 200, 1000]

# 清空列表元素

list1.clear()

print(list1) #

和字串一樣,列表也可以做切片操作,通過切片操作我們可以實現對列表的複製或者將列表中的一部分取出來建立出新的列表,**如下所示。

fruits += ['pitaya', 'pear', 'mango']

# 列表切片

fruits2 = fruits[1:4]

# 可以通過完整切片操作來複製列表

fruits3 = fruits[:]

fruits4 = fruits[-3:-1]

print(fruits4) # ['pitaya', 'pear']

# 可以通過反向切片操作來獲得倒轉後的列表的拷貝

fruits5 = fruits[::-1]

下面的**實現了對列表的排序操作。

list2 = sorted(list1)

# sorted函式返回列表排序後的拷貝不會修改傳入的列表

# 函式的設計就應該像sorted函式一樣盡可能不產生***

list3 = sorted(list1, reverse=true)

# 通過key關鍵字引數指定根據字串長度進行排序而不是預設的字母表順序

list4 = sorted(list1, key=len)

print(list1)

print(list2)

print(list3)

print(list4)

# 給列表物件發出排序訊息直接在列表物件上進行排序

list1.sort(reverse=true)

print(list1)

python列表建立操作 python列表操作

建立列表 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 在列...

python列表建立操作 python列表操作

列表是最常用的python資料型別,它可以作為乙個方括號內的逗號分隔值出現。列表的資料項不需要具有相同的型別。如 list a b 2,5,1 1 新建列表 stus 建立空列表 stus1 list 建立空列表 print stus print stus1 stus 范冰冰 維達 soon 上述 ...

python 列表操作

list 一種順序儲存結構,序列的一種,列表元素可以是任何型別,類似陣列,引用型別。格式定義 olist 1,str 定義乙個空的list olist 獲取列表元素個數 len olist 刪除乙個列表 del olist 刪除乙個列表元素 del list i 支援 olist1 olist2 列...