每個 Python 程式設計師都應該知道的 7 個列表函數
要點
在確定清單中存在的元素數量時,使用 len() 函數非常有利,與進行手動計算的必要性相比,最終可以節省時間和程式碼。
append()
方法用於將新元素新增至清單的末尾,以便於根據預定標準或使用者驅動的輸入對其內容進行直接調整。
「extend()」方法是一種透過同時合併多個項目來擴充現有清單的便捷方法,從而簡化了以全面的方式使用附加元素來增強清單的過程。
列表是 Python 程式語言中資料結構和演算法技術的基本組成部分。它們的重要性怎麼強調都不為過,因為它們在實施各種計畫中發揮關鍵作用。任何項目中省略清單都是非常不切實際的,並且可能會妨礙其效率和效果。
Python 提供了一系列內建函數來促進標準清單操作的執行,目的是透過為程式設計師提供高效的工具來簡化他們的開發過程。
len() 函數
len() 函數可用來決定清單中存在的元素的數量。下面提供一個示範實例:
my_list = [1, 2, 3, "hello", "rice", "code", 1.2]
list_length = len(my_list)
print(list_length) # returns 7
由於缺少「len()」函數,因此需要手動計算長度,如使用 Python for 迴圈的程式碼片段所示。
my_list = [1, 2, 3, "hello", "rice", "code", 1.2]
count = 0
for i in my_list:
count \+= 1
print(count) # returns 7
毫無疑問,在某些情況下,len()函數的使用可以帶來更簡潔、更有效率的實作。強烈建議在認為適合優化程式碼時使用此函數。
##append() 函數
append()
方法可用於將新元素追加到清單的末尾,這在程式碼中滿足特定先決條件後立即使用它時可能特別有用。這種用法的範例如下:
my_list = [1, 2, 3, "hello", "rice", "code", 1.2]
question = input("Do you love Python?: ").lower()
if question == "yes":
my_list.append("Python is the best!!") # use of the append() function
else:
my_list.append("You should try Python") # use of the append() function
print(my_list)
本實例使用「if」語句根據使用者提供的輸入將特定片語附加到原始句子清單中。
append()
方法旨在以簡單的方式將單一元素新增至清單。但是,透過使用插入運算子 ( insert()
) 或串聯運算子 ( +
) 可以獲得類似的結果。這些替代方案允許同時添加多個元素,從而簡化流程並避免重複呼叫「append()」方法。
my_list = [1, 2, 3, "hello", "rice", "code", 1.2]
my_list \+= ["Python is the best!!"]
將加法運算符合併到程式碼中可能會導致效率降低,因為它傾向於建立原始清單的單獨的更新副本,而不是直接修改現有清單。相反,利用append()方法可以立即修改初始列表,而不會產生產生附加副本的開銷。
##extend() 函數
「extend()」方法是一個預先定義函數,可讓您透過接受包含這些元素的單一參數來同時將多個元素新增至清單。要利用此功能,只需將所需的項目作為參數傳遞給目標清單的「擴展」方法即可。
my_list = [1, 2, 3, "hello", "rice", "code", 1.2]
my_list.extend(["item", "muo", 350])
print(my_list)
# prints [1, 2, 3, 'hello', 'rice', 'code', 1.2, 'item', 'muo', 350]
Python 中的「extend()」方法被設計為僅接受單一參數,因此需要使用替代方法,例如將項目附加到清單中,如提供的程式碼片段中所示。
反向()函數
反向函數,也稱為“反向迭代”或“反向迭代”,是一種程式設計概念,它透過向後重新排列給定列表中的元素順序來改變它們。此操作可以使用Python、Java等各種程式語言來執行。實現此功能的常見方法是透過遞歸,其中清單中的最後一個元素在反轉後成為第一個元素。例如,如果我們有一個名為「my\_list」的列表,呼叫其反向方法將導致它變成典型的英語字母順序的 [‘z’,‘y’,‘x’]。
my_list = [1, 2, 3, "hello", "rice", "code"]
my_list.reverse()
print(my_list) # prints ['code', 'rice', 'hello', 3, 2, 1]
要以相反的順序對清單重新排序而不使用內建的「reverse()」方法,可以使用 Python 的切片表示法。示範實例如下:
my_list = [1, 2, 3, "hello", "rice", "code"]
reversed_list = my_list[::-1]
print(reversed_list) # prints ['code', 'rice', 'hello', 3, 2, 1]
在前面的實例中,使用表達式「my_list[::-1]」會導致建立初始清單的反向副本。因此,這需要記憶體中存在兩個單獨的列表,當唯一目標是反轉初始列表本身時,這可能不是最佳的。
insert() 函數
「insert()」方法透過在序列中的指定位置插入新元素來更改列表,類似於「append()」方法的操作方式。與簡單地將元素附加到列表末尾相比,這提供了更大的靈活性,因為它使用戶能夠將項目精確地放置在有序集合中所需的位置。下面提供了一個說明性實例:
my_list = [1, 2, 3, "hello", "rice", "code"]
my_list.insert(0, "first") # add "first" to the beginning of your list
print(my_list) # prints ['first', 1, 2, 3, 'hello', 'rice', 'code']
提供的程式碼示範了 JavaScript 中 insert()
函數的正確用法。
your_list.insert(index, new_list_item)
sort() 函數
sort() 函數用於按升序組織具有特定資料結構的項目的集合,例如數字或字串。例如,請考慮以下範例:
my_list = [1, 2, 10, 30, 3, 2.4]
my_list2 = ['code', 'rice', 'zion', 'hello']
my_list.sort()
my_list2.sort()
print(my_list) # prints [1, 2, 2.4, 3, 10, 30]
print(my_list2) # prints ['code', 'hello', 'rice', 'zion']
當在由不同資料類型的元素(例如字母字元和數字值)組成的異質列表上使用“sort()”函數時,會產生“TypeError”類型的錯誤。
count() 函數
count() 函數用於確定特定元素在給定清單中出現的頻率,並將此資訊傳回給使用者。若要使用此功能,請依照下列步驟操作:
my_list = ['code', 10, 30, 'code', 3, 'code', 'rice', 5]
print(my_list.count('code')) # prints 3
在不使用 count() 方法的情況下執行此操作將需要更多的編碼。讓我們考慮以下場景:
my_list = ['code', 10, 30, 'code', 3, 'code', 'rice', 5]
count_code = 0
for item in my_list:
if item == 'code':
count_code \+= 1
print(count_code) # prints 3
len() 函數計算給定清單中元素的總數,而 count() 函數決定特定元素在相同清單中出現的頻率。
使用列表函數編寫更好的程式碼
利用 Python 內建列表操作函數提供的操作數組可以大幅簡化編碼過程,並最大限度地減少對複雜且資源密集型程式設計結構的需求。這些功能通常有助於加快開發速度,同時也促進更簡潔和可維護的實現。
使用列表函數可以輕鬆執行標準清單操作任務,從而可以更專注於程式設計工作的其他方面。