#-*- coding:utf-8 -*-
# python中定義乙個函式要使用def語句,依次寫出函式名、括號、括號中的引數和冒號:,然後在縮排塊中寫函式體,
# 函式的返回值用return返回
def my_abs(x):
if x>=0:
return x
else:
return -x
#如果沒有return語句,函式執行完畢也會返回結果,結果為none
# return none 可以簡寫為return
# 定義乙個什麼都不做的空函式,可以用pass語句
def nop():
pass
# 呼叫函式時,如果引數個數不對,python直譯器會自動檢查出來,跑出typeerror
# my_abs(1,2)
# typeerror: my_abs() takes exactly 1 argument (2 given)
#如果引數型別不對,python直譯器無法幫我們檢查。
# my_abs('a')
#內建函式 abs會檢查出引數錯誤
abs('a')
# typeerror: bad operand type for abs(): 'str'
# 修改一下my_abs的定義,對引數型別做檢查,只允許整數和浮點數型別的引數,資料型別檢查可以用內建函式instance實現:
def my_abs(x):
if not isinstance(x,(int,float)):
raise typeerror("bad operand type")
if x>=0:
return x
else:
return -x
my_abs('a')
# typeerror: bad operand type
# 返回多個值
import math
def move(x,y,step,angle=0):
nx=x+step*math.cos(angle)
ny=y=step*math.sin(angle)
return nx,ny
x,y=move(100,100,60,math.pi/6)
print x,y
#同時獲得返回值151.961524227 30.0
#其實這只是一種假象,返回的是單一直
r=move(100,100,60,math.pi/6)
print r
# (151.96152422706632, 29.999999999999996)
#返回值原來是乙個tuple
Python定義函式
1.1 定義函式基礎 參考 define the function def fib n print the fibonacci series up to n.a,b 0,1 while a n print a a,b b,a b 1.2 函式預設引數 default arguments def as...
python 定義函式
前面我們已經講過如何呼叫python內建的一些函式,但當內建函式不能滿足我們的需求時,就需要自己定義函式,那麼在python中如何自己定義函式呢?下面我們重點講解python中函式的定義與使用。在python中,定義函式使用def語句,def語句後依次時函式名,括號,括號中的函式引數以及冒號,最後是...
Python函式定義
可以在程式的開頭定義函式,函式的定義如下所示,形參可以有也可以沒有,也可以有多個 def 函式名 形參.函式注釋 函式體下面有個例項 def convert currency im,er 匯率兌換函式 param im 需要兌換的金額 param er 匯率 return 兌換完成金額 out im...