示例,將新列表中的所有值設置為 'hello': newlist = ['hello' for x in fruits] 表達式還可以包含條件,不像篩選器那樣,而是作為操縱結果的一種方式: 示例,返回 "orange" 而不是 "banana": newlist = [x if x != "bana ...
示例,將新列表中的所有值設置為 'hello':
newlist = ['hello' for x in fruits]
表達式還可以包含條件,不像篩選器那樣,而是作為操縱結果的一種方式:
示例,返回 "orange" 而不是 "banana":
newlist = [x if x != "banana" else "orange" for x in fruits]
列表對象具有 sort() 方法,預設情況下將對列表進行字母數字排序,升序排列:
示例,對列表按字母順序排序:
thislist = ["orange", "mango", "kiwi", "pineapple", "banana"]
thislist.sort()
print(thislist)
示例,對列表按數字順序排序:
thislist = [100, 50, 65, 82, 23]
thislist.sort()
print(thislist)
要進行降序排序,請使用關鍵字參數 reverse = True:
示例,對列表進行降序排序:
thislist = ["orange", "mango", "kiwi", "pineapple", "banana"]
thislist.sort(reverse=True)
print(thislist)
示例,對列表進行降序排序:
thislist = [100, 50, 65, 82, 23]
thislist.sort(reverse=True)
print(thislist)
您還可以通過使用關鍵字參數 key = function 來自定義自己的函數。該函數將返回一個數字,用於對列表進行排序(首先是最小的數字):
示例,根據數字距離 50 的接近程度對列表進行排序:
def myfunc(n):
return abs(n - 50)
thislist = [100, 50, 65, 82, 23]
thislist.sort(key=myfunc)
print(thislist)
預設情況下,sort() 方法區分大小寫,這導致所有大寫字母在小寫字母之前排序:
示例,區分大小寫的排序可能會導致意外結果:
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.sort()
print(thislist)
幸運的是,在對列表進行排序時,我們可以使用內置函數作為鍵函數。因此,如果您想要不區分大小寫的排序函數,請使用 str.lower 作為鍵函數:
示例,執行不區分大小寫的列表排序:
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.sort(key=str.lower)
print(thislist)
如果要反轉列表的順序,而不考慮字母表順序,該怎麼辦?reverse() 方法將元素的當前排序順序反轉。
示例,反轉列表項的順序:
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.reverse()
print(thislist)
您不能簡單地通過鍵入 list2 = list1 來複制一個列表,因為:list2 將只是對 list1 的引用,對 list1 進行的更改也會自動在 list2 中進行。有多種方法可以進行複製,其中一種方法是使用內置的列表方法 copy()。
示例,使用 copy() 方法複製一個列表:
thislist = ["apple", "banana", "cherry"]
mylist = thislist.copy()
print(mylist)
另一種複製的方法是使用內置的 list() 方法。
示例,使用 list() 方法複製一個列表:
thislist = ["apple", "banana", "cherry"]
mylist = list(thislist)
print(mylist)
在Python中,有多種方法可以連接兩個或多個列表。其中一種最簡單的方法是使用 + 運算符。
示例,連接兩個列表:
list1 = ["a", "b", "c"]
list2 = [1, 2, 3]
list3 = list1 + list2
print(list3)
另一種連接兩個列表的方法是將 list2 中的所有項逐一附加到 list1 中:
示例,將 list2 附加到 list1:
list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]
for x in list2:
list1.append(x)
print(list1)
或者您可以使用 extend() 方法,其目的是將一個列表的元素添加到另一個列表中:
示例,使用 extend() 方法將 list2 添加到 list1 的末尾:
list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]
list1.extend(list2)
print(list1)
Python具有一組內置方法,您可以在列表上使用這些方法。
方法 | 描述 |
---|---|
append() | 在列表末尾添加元素 |
clear() | 移除列表中的所有元素 |
copy() | 返回列表的副本 |
count() | 返回具有指定值的元素數量 |
extend() | 將列表(或任何可迭代對象)的元素添加到當前列表的末尾 |
index() | 返回具有指定值的第一個元素的索引 |
insert() | 在指定位置添加元素 |
pop() | 移除指定位置的元素 |
remove() | 移除具有指定值的項目 |
reverse() | 顛倒列表的順序 |
sort() | 對列表進行排序 |
最後
為了方便其他設備和平臺的小伙伴觀看往期文章,鏈接奉上:
公眾號搜索Let us Coding
,知乎,開源中國,CSDN,思否,掘金,InfoQ,簡書,博客園,慕課,51CTO,helloworld,騰訊開發者社區,阿裡開發者社區
看完如果覺得有幫助,歡迎點贊、收藏和關註