[5 min python] 內建函數 - max()

更新 發佈閱讀 4 分鐘

Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。

max():最大值

語法:

max(iterable)
max(a, b, c, ...)
max(iterable, key=函數)
max(iterable, default=預設值)

從一堆東西裡面,找出最大的那個。可以傳一個可迭代物件(像 list),也可以直接傳多個值:

print(max([3, 1, 4, 1, 5]))  # 5
print(max(10, 20, 5))         # 20
print(max("apple", "banana"))  # banana(照字母排序)

用 key 參數可以自訂比較的方式:

words = ["hello", "hi", "hey"]
print(max(words, key=len))  # hello(最長的字串)

nums = [3, -7, 2, -1]
print(max(nums, key=abs))   # -7(絕對值最大的)

如果傳入空的可迭代物件,又沒給 default,會報錯:

# max([])  # ValueError: max() arg is an empty sequence
print(max([], default=0))  # 0(安全的做法)

不同型別不能直接比大小(Python 3 不支援):

# max(1, "hello")  # TypeError: '>' not supported between instances of 'str' and 'int'

小小綜合例子

students = [
    {"name": "Alice", "score": 85},
    {"name": "Bob", "score": 72},
    {"name": "Charlie", "score": 90},
    {"name": "Diana", "score": 68}
]

# 找出分數最高的學生
top = max(students, key=lambda s: s["score"])
print(f"最高分:{top['name']},{top['score']} 分")
# 最高分:Charlie,90 分

# 找出名字最長的學生
longest_name = max(students, key=lambda s: len(s["name"]))
print(f"名字最長:{longest_name['name']}")
# 名字最長:Charlie

# 搭配 min 一起用
scores = [s["score"] for s in students]
print(f"最高:{max(scores)},最低:{min(scores)},差距:{max(scores) - min(scores)}")
# 最高:90,最低:68,差距:22
留言
avatar-img
艾利斯幻想旅程
5會員
105內容數
網路世界是一個充滿多元性與無限可能的空間,人們可以在此分享資訊、交流思想,並展現無盡的創造力。然而,隨著社交媒體和線上論壇的普及,一種有趣且獨特的現象也隨之興起——廢文。廢文指的是那些內容看似無聊、無害,或表面上毫無意義的帖子、留言或圖片,通常目的在於娛樂或逗趣,而非提供實質價值的資訊。
艾利斯幻想旅程的其他內容
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 min():最小值 語法: min(iterable) min(a, b, c, ...) min(iterable,
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 min():最小值 語法: min(iterable) min(a, b, c, ...) min(iterable,
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 sum():加總 語法: sum(iterable[, start]) 把一個可迭代物件(像 list、tuple)裡
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 sum():加總 語法: sum(iterable[, start]) 把一個可迭代物件(像 list、tuple)裡
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 divmod():同時算商和餘數 語法: divmod(a, b) 一次回傳 (商, 餘數) 的 tuple,等於同時
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 divmod():同時算商和餘數 語法: divmod(a, b) 一次回傳 (商, 餘數) 的 tuple,等於同時
看更多
你可能也想看
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
2419. Longest Subarray With Maximum Bitwise AND 給定一個輸入陣列nums,請找出擁有最大bitwise AND值的子陣列長度是多少?
Thumbnail
2419. Longest Subarray With Maximum Bitwise AND 給定一個輸入陣列nums,請找出擁有最大bitwise AND值的子陣列長度是多少?
Thumbnail
Path with Maximum Probability 題目給定一個無向圖(雙向移動皆可), 提供每條邊的起終點,和每條邊對應的通過時的成功機率。 請問從起點start走到終點end的最高成功機率是多少? 如果完全沒有路徑可以抵達,則返回0。
Thumbnail
Path with Maximum Probability 題目給定一個無向圖(雙向移動皆可), 提供每條邊的起終點,和每條邊對應的通過時的成功機率。 請問從起點start走到終點end的最高成功機率是多少? 如果完全沒有路徑可以抵達,則返回0。
Thumbnail
題目敘述 624. Maximum Distance in Arrays 給定一個輸入二維陣列arrays。 請計算的陣列距離是多少? 陣列距離的定義 = max | a - b | 其中 a, b 來自不同的一維陣列
Thumbnail
題目敘述 624. Maximum Distance in Arrays 給定一個輸入二維陣列arrays。 請計算的陣列距離是多少? 陣列距離的定義 = max | a - b | 其中 a, b 來自不同的一維陣列
Thumbnail
題目敘述 149. Max Points on a Line 給定一串2維平面的點座標,請問最多有幾個點落在同一條直線上? 落在同一條直線也就是數學上所謂的"共線" colinear
Thumbnail
題目敘述 149. Max Points on a Line 給定一串2維平面的點座標,請問最多有幾個點落在同一條直線上? 落在同一條直線也就是數學上所謂的"共線" colinear
Thumbnail
題目敘述 Binary Tree Maximum Path Sum 給定一個二元樹,請找出最大的區間路徑和是多少? 註: 區間路徑和 = 某個節點a -> 某個節點b的路徑節點值總和。
Thumbnail
題目敘述 Binary Tree Maximum Path Sum 給定一個二元樹,請找出最大的區間路徑和是多少? 註: 區間路徑和 = 某個節點a -> 某個節點b的路徑節點值總和。
Thumbnail
題目敘述 題目會給定我們一棵二元數Binary Tree的根結點。 問我們任意祖先節點和晚輩節點之間,最大的差值的絕對值是多少? 題目的原文敘述 測試範例 Example 1: Input: root = [8,3,10,1,6,null,14,null,null,4,7,13] Ou
Thumbnail
題目敘述 題目會給定我們一棵二元數Binary Tree的根結點。 問我們任意祖先節點和晚輩節點之間,最大的差值的絕對值是多少? 題目的原文敘述 測試範例 Example 1: Input: root = [8,3,10,1,6,null,14,null,null,4,7,13] Ou
Thumbnail
題目敘述 題目會給定一個整數陣列nums,要求我們找出兩組pair,分別是(a,b), 和 (c, d),並且最大化 a*b - c * d 的值。 例如,給定 nums = [5,6,2,7,4] 那麼,最大的差值 = Max { a * b - c * d } = 7 * 6 - 2 *
Thumbnail
題目敘述 題目會給定一個整數陣列nums,要求我們找出兩組pair,分別是(a,b), 和 (c, d),並且最大化 a*b - c * d 的值。 例如,給定 nums = [5,6,2,7,4] 那麼,最大的差值 = Max { a * b - c * d } = 7 * 6 - 2 *
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News