亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

watak

Python 函數(shù)


本章節(jié)我們將為大家介紹Python中函數(shù)的應(yīng)用。

該章節(jié)可參閱Python 函數(shù)應(yīng)用詳解。

Python 定義函數(shù)使用 def 關(guān)鍵字,一般格式如下:

def??函數(shù)名(參數(shù)列表):
????函數(shù)體


讓我們使用函數(shù)來輸出"Hello World!":

>>>?def?hello()?:
	print("Hello?World!")

	
>>>?hello()
Hello?World!
>>>


更復(fù)雜點的應(yīng)用,函數(shù)中帶上參數(shù)變量:

def?area(width,?height):
????return?width?*?height
?
def?print_welcome(name):
????print("Welcome",?name)

print_welcome("Fred")
w?=?4
h?=?5
print("width?=",?w,?"?height?=",?h,?"?area?=",?area(w,?h))


以上實例輸出結(jié)果:

Welcome?Fred
width?=?4??height?=?5??area?=?20



函數(shù)變量作用域

定義在函數(shù)內(nèi)部的變量擁有一個局部作用域,定義在函數(shù)外的擁有全局作用域。

通過以下實例,你可以清楚了解Python函數(shù)變量的作用域:

#!/usr/bin/env?python3
a?=?4??#?全局變量
?
def?print_func1():
????a?=?17?#?局部變量
????print("in?print_func?a?=?",?a)
def?print_func2():???
????print("in?print_func?a?=?",?a)
print_func1()
print_func2()
print("a?=?",?a)


以上實例運行結(jié)果如下:

in?print_func?a?=??17
in?print_func?a?=??4
a?=??4


關(guān)鍵字參數(shù)

函數(shù)也可以使用 kwarg=value 的關(guān)鍵字參數(shù)形式被調(diào)用.例如,以下函數(shù):

def?parrot(voltage,?state='a?stiff',?action='voom',?type='Norwegian?Blue'):
????print("--?This?parrot?wouldn't",?action,?end='?')
????print("if?you?put",?voltage,?"volts?through?it.")
????print("--?Lovely?plumage,?the",?type)
????print("--?It's",?state,?"!")


可以以下幾種方式被調(diào)用:

parrot(1000)??????????????????????????????????????????#?1?positional?argument
parrot(voltage=1000)??????????????????????????????????#?1?keyword?argument
parrot(voltage=1000000,?action='VOOOOOM')?????????????#?2?keyword?arguments
parrot(action='VOOOOOM',?voltage=1000000)?????????????#?2?keyword?arguments
parrot('a?million',?'bereft?of?life',?'jump')?????????#?3?positional?arguments
parrot('a?thousand',?state='pushing?up?the?daisies')??#?1?positional,?1?keyword


以下為錯誤調(diào)用方法:

parrot()?????????????????????#?required?argument?missing
parrot(voltage=5.0,?'dead')??#?non-keyword?argument?after?a?keyword?argument
parrot(110,?voltage=220)?????#?duplicate?value?for?the?same?argument
parrot(actor='John?Cleese')??#?unknown?keyword?argument



返回值

Python的函數(shù)的返回值使用return語句,可以將函數(shù)作為一個值賦值給指定變量:

def?return_sum(x,y):
????c?=?x?+?y
????return?c

res?=?return_sum(4,5)
print(res)


你也可以讓函數(shù)返回空值:

def?empty_return(x,y):
????c?=?x?+?y
????return

res?=?empty_return(4,5)
print(res)



可變參數(shù)列表

最后,一個最不常用的選擇是可以讓函數(shù)調(diào)用可變個數(shù)的參數(shù).這些參數(shù)被包裝進一個元組(查看元組和序列).在這些可變個數(shù)的參數(shù)之前,可以有零到多個普通的參數(shù):

def?arithmetic_mean(*args):
????sum?=?0
????for?x?in?args:
????????sum?+=?x
????return?sum

print(arithmetic_mean(45,32,89,78))
print(arithmetic_mean(8989.8,78787.78,3453,78778.73))
print(arithmetic_mean(45,32))
print(arithmetic_mean(45))
print(arithmetic_mean())


以上實例輸出結(jié)果為:

244
170009.31
77
45
0


更詳細教程請參閱參閱Python 函數(shù)應(yīng)用詳解。

Artikel sebelumnya: Artikel seterusnya: