好程式設計師Python培訓分享函式的定義與使用示例
好程式設計師Python 培訓分享函式的定義與使用示例 , 結合例項形式分析了 Python 函式的定義、引數、變數作用域、返回值等相關概念與使用技巧。
Python 定義函式使用 def 關鍵字,一般格式如下:
def 函式名(引數列表):
函式體
讓我們使用函式來輸出"HelloWorld ! " :
>>> def hello() :
print("Hello World!")
>>> hello()
Hello World!
>>>
更復雜點的應用,函式中帶上引數變數:
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))
以上例項輸出結果:
Welcome Fred
width = 4 height = 5 area = 20
函式變數作用域
定義在函式內部的變數擁有一個區域性作用域,定義在函式外的擁有全域性作用域。透過以下例項,你可以清楚瞭解Python 函式變數的作用域:
#!/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)
以上例項執行結果如下:
in print_func a = 17
in print_func a = 4
a = 4
關鍵字引數
函式也可以使用kwarg=value 的關鍵字引數形式被呼叫 . 例如 , 以下函式 :
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, "!")
可以以下幾種方式被呼叫:
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
以下為錯誤呼叫方法:
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 的函式的返回值使用 return 語句,可以將函式作為一個值賦值給指定變數:
def return_sum(x,y):
c = x + y
return c
res = return_sum(4,5)
print(res)
你也可以讓函式返回空值:
def empty_return(x,y):
c = x + y
return res = empty_return(4,5)
print(res)
可變引數列表
最後, 一個最不常用的選擇是可以讓函式呼叫可變個數的引數 . 這些引數被包裝進一個元組 ( 檢視元組和序列 ). 在這些可變個數的引數之前 , 可以有零到多個普通的引數 :
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())
以上例項輸出結果為:
244
170009.31
77
45
0
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913864/viewspace-2738514/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 好程式設計師Python培訓分享Python的遞迴函式與匿名函式呼叫程式設計師Python遞迴函式
- 好程式設計師Python培訓分享函式返回值的示例程式碼詳解程式設計師Python函式
- 好程式設計師Python培訓分享簡述fetchone()函式程式設計師Python函式
- 好程式設計師Python培訓分享函數語言程式設計之匿名函式程式設計師Python函數函式
- 好程式設計師大資料培訓分享之hive常見自定義函式程式設計師大資料Hive函式
- 好程式設計師Java培訓分享Java函式式編碼結構程式設計師Java函式
- 好程式設計師Python培訓分享Python程式設計師面試技巧程式設計師Python面試
- 好程式設計師Python培訓分享Python系列之字串的使用程式設計師Python字串
- 好程式設計師Python培訓分享numpy簡介程式設計師Python
- 好程式設計師Python培訓分享四款Python程式庫程式設計師Python
- 好程式設計師Python培訓分享Python生成器與迭代器程式設計師Python
- 好程式設計師ava培訓分享void的用法和意義程式設計師
- 好程式設計師web前端培訓分享關於parseInt函式的一切程式設計師Web前端函式
- 好程式設計師Python培訓分享機器學習面試題一程式設計師Python機器學習面試題
- 好程式設計師大資料培訓分享之hive常用內部函式程式設計師大資料Hive函式
- 好程式設計師Java培訓分享Java程式設計技巧程式設計師Java
- 好程式設計師Python培訓分享Python異常處理程式設計師Python
- 好程式設計師web前端培訓分享JavaScript學習筆記函式進階程式設計師Web前端JavaScript筆記函式
- 好程式設計師Python培訓分享開發工具推薦程式設計師Python
- 好程式設計師Python培訓分享基礎入門Django程式設計師PythonDjango
- 好程式設計師Python培訓分享For迴圈用法詳解程式設計師Python
- 好程式設計師Java培訓分享BigDecimal的用法程式設計師JavaDecimal
- 好程式設計師Java培訓分享maven-概述程式設計師JavaMaven
- 好程式設計師Java培訓分享Java EE與Java的區別程式設計師Java
- 好程式設計師Java培訓分享Java程式設計師技能提升指南程式設計師Java
- 好程式設計師Python培訓分享Python程式設計中常見的異常處理程式設計師Python
- 好程式設計師Python培訓之詳解eval好與壞程式設計師Python
- 好程式設計師Python培訓分享如何寫Python裝飾器程式設計師Python
- 好程式設計師Python培訓分享Python爬蟲工具列表大全程式設計師Python爬蟲
- 好程式設計師Python培訓分享Python爬蟲相關框架程式設計師Python爬蟲框架
- 好程式設計師Python培訓分享Python系列之分支結構程式設計師Python
- 好程式設計師Python培訓分享Python如何呼叫RPC介面程式設計師PythonRPC
- 好程式設計師Python培訓分享Python配置gRPC環境程式設計師PythonRPC
- 好程式設計師Python培訓分享學Python要注意什麼程式設計師Python
- 好程式設計師Python培訓第10講:字串的使用程式設計師Python字串
- 好程式設計師Python培訓分享網路爬蟲的分類程式設計師Python爬蟲
- 好程式設計師Python培訓分享python中爬蟲常用到的正規表示式程式設計師Python爬蟲
- 好程式設計師大資料培訓分享之《MySQL資料庫》常用函式整理程式設計師大資料MySql資料庫函式