Python 3 – 函數
Python 是面向對象編程語言,所有功能都是通過函數和類實現。愛掏網 - it200.com函數是任何編程語言中最基本的概念之一。愛掏網 - it200.com
Python 提供了強大的函數功能,包括定義參數、默認參數、不定長參數、匿名函數和高階函數等等。愛掏網 - it200.com
在 Python 中,使用 def
關鍵字來定義函數。愛掏網 - it200.com下面是一個簡單的函數定義并調用的示例:
def greet(name):
print("Hello, " + name + "!")
greet("World") # Hello, World!
在 Python 中,函數調用直接使用函數名并傳遞所需的參數。愛掏網 - it200.com注意,函數的參數由一對圓括號括起來,即使沒有參數也必須使用圓括號。愛掏網 - it200.com
參數的傳遞方式
Python 中函數的參數可以通過不同的方式傳遞:位置參數、默認參數、關鍵字參數和不定長參數。愛掏網 - it200.com
位置參數
位置參數是最常用的參數傳遞方式,順序很重要,按照定義順序一一傳遞參數。愛掏網 - it200.com下面是一個位置參數的示例:
def add(a, b):
return a + b
print(add(1, 2)) # 3
默認參數
默認參數可以指定參數的默認值,如果沒有傳遞參數則使用默認值。愛掏網 - it200.com下面是一個默認參數的示例:
def add(a, b=2):
return a + b
print(add(1)) # 3
關鍵字參數
關鍵字參數可以使用參數名來傳遞參數,這種方式不依賴于參數的位置。愛掏網 - it200.com下面是一個關鍵字參數的示例:
def add(a, b):
return a + b
print(add(b=2, a=1)) # 3
不定長參數
不定長參數可以接受任意個參數,可以是位置參數、默認參數和關鍵字參數。愛掏網 - it200.com下面是一個不定長參數的示例:
def add(*args):
sum = 0
for i in args:
sum += i
return sum
print(add(1, 2, 3, 4, 5)) # 15
匿名函數
匿名函數也叫 lambda 函數,是一個沒有名字的函數。愛掏網 - it200.com它可以接收任意多個參數,并且返回一個結果。愛掏網 - it200.com下面是一個匿名函數的示例:
square = lambda x: x * x
print(square(2)) # 4
在上面的示例中,我們定義了一個 lambda 函數,它接收一個參數 x
并返回 x * x
的結果。愛掏網 - it200.com
高階函數
高階函數是一個函數接收另一個函數作為參數或者返回一個函數。愛掏網 - it200.comPython 中內置了許多高階函數,包括 map
、filter
和 reduce
等。愛掏網 - it200.com
map 函數
map
函數可以對序列中的每個元素應用一個函數,然后返回一個新序列。愛掏網 - it200.com下面是一個 map
函數的示例:
def square(x):
return x * x
squares = map(square, [1, 2, 3, 4, 5])
print(list(squares)) # [1, 4, 9, 16, 25]
在上面的示例中,我們使用 map
函數對 [1, 2, 3, 4, 5]
序列中的每個元素應用 square
函數,并返回一個新序列 squares
。愛掏網 - it200.com
filter 函數
filter
函數可以對序列中的元素應用一個函數,用于過濾出符合條件的元素,并返回一個新序列。愛掏網 - it200.com下面是一個 filter
函數的示例: