從兩個 Python 列表中查詢最大值和最小值


引言

Python 目前被廣泛認為是最靈活的程式語言之一,它提供了大量的內建函式和方法,可簡化複雜的任務。在本文中,我們將深入探討如何使用這些原生功能快速查詢兩個 Python 列表中的最大值和最小值。無論我們是一個初學者還是一個經驗豐富的程式設計師,瞭解如何利用這些功能都能顯著精簡我們的程式碼。

從兩個 Python 列表中查詢最大值和最小值

在我們探討如何從兩個單獨的列表中查詢最大值和最小值之前,讓我們首先熟悉 Python 提供的相應函式。這種方法非常適合較小的資料集;不過,在處理更大資料集大小時可能並不理想。出於此目的,另一種高階演算法方法可能執行良好,並且需要更深入的探索。

語法

  • 'max()' − 此函式返回可迭代物件(例如列表)中最高的值,或者如果提供了多個引數,則返回最大的引數。

  • 'min()' − 相反,此函式返回可迭代物件或提供的多個引數中的最小值。

然後繼續討論如何識別涉及兩個不同列表的不同方法中的最大值和最小值,

方法

方法 1:使用 min 和 max 函式

方法 2:使用 zip 函式

方法 3:使用 lambda 函式

方法 1:Python 程式使用 min 和 max 函式從兩個 Python 列表中查詢最大值和最小值

考慮有兩個包含整型元素的單獨列表 A 和 B。為了輕鬆確定它們的最大值和最小值,我們可以使用預定義的函式。

演算法

步驟 1:在這種情況下,透過合併兩個列表進行串聯(即使用運算子 '+')來建立 Combined_list。

步驟 2:計算最大值和最小值時考慮了每個元素,分別使用 `max()` 和 `min()`。

步驟 3:最後用這些值列印結果。

示例

#Initializing the two lists with integer data types
List_A = [5, 9, 13]
List_B = [7,-3 ,11]
#using the concatenation operator that is “+”, we can add the two lists
Combined_list = List_A + List_B
#with the functions, the user can get the small and high values
maximum_value = max(Combined_list)
minimum_value = min(Combined_list)
#Output is printed using print function
print("Maximum Value:", maximum_value)
print("Minimum Value:", minimum_value)

輸出

Maximum Value: 13
Minimum Value: -3

方法 2:使用 zip 函式查詢兩個 Python 列表中的最大值和最小值

如果我們想要提取兩個相關列表之間對應的最大值和最小值,我們可以使用 zip 函式。這種方法特別適用於需要資料比較的應用程式,例如跟蹤股票價格或分析不同位置的溫度變化。

演算法

步驟 1:利用內建 `zip()` 函式對相應元素進行配對,並使用列表推導與 `max()` 和 `min()` 一起使用。

步驟 2:這確保了從合併後的列表中有效提取最大值和最小值。

步驟 3:藉助具有兩個函式的 zip 函式,計算值,然後使用 print 語句返回該值。

示例

#creating two lists with integer data types
List_X = [2, 8, 10]
List_Y = [5, -4 ,12]
#function is defined with two parameters as inputs to get the minimum and maximum values
maximum_values = [max(x,y) for x,y in zip(List_X,List_Y)]
minimum_values = [min(x,y) for x,y in zip(List_X,List_Y)]

#printing the output values
print("Maximum Values:", maximum_values)
print("Minimum Values:", minimum_values)

輸出

Maximum Values: [5, 8, 12]
Minimum Values: [2, -4, 10]

方法 3:使用 lambda 函式從兩個列表獲取最大值和最小值的 Python 程式

有時,我們在搜尋最大值或最小值時可能希望指定其他條件。Python 提供了一個有用的特性,我們可以使用 lambda 函式在這些內建方法中應用謂詞。

演算法

步驟 1:透過串聯合並兩個列表,使用者可以透過 lambda 函式應用過濾器來找出僅正數。

步驟 2:然後將生成的過濾集合傳遞給 `min()` 以高效地獲取所需的最小值。

步驟 3:`max()` 函式用於獲取給定的雙列資料結構的最大值。

步驟 4:返回輸出。

示例

#list data structure is initialized with both positive and negative numbers
list_p = [9,6,1]
list_q = [2,11 ,-15]
#lambda is always declared along with the filter function
#filter method
filtered_list = list(filter(lambda a: (a > 0), list_p + list_q))
#Defining the required function to get the small and high value
minimum_value = min(filtered_list)
maximum_value = max(filtered_list)
#print function will print the output
print("Lowest value:", minimum_value)
print("Highest value:", maximum_value) 

輸出

Lowest value: 1
Highest value: 11

結論

Python 豐富的內建功能集可極大簡化複雜操作,例如在多個列表中查詢最大值和最小值。透過利用上面各種方法中解釋的技術,例如獨立列表或比較相應元素。使用的函式是 lambda、filter、max 和 min 方法。

更新於: 07-Aug-2023

4K+ 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.