python 定義函式

2021-09-07 13:23:13 字數 1372 閱讀 1273

#-*- 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...