Python函式的引數型別

2021-10-04 04:12:07 字數 2268 閱讀 5813

​ 1、位置引數:引數的位置(順序)很重要,形參和實參個數要匹配

​ 2、關鍵字引數:對引數的位置要求不是很嚴格

​ 3、預設值引數:

​ (1)如果形參中制定了預設值,在實參中可以不傳遞形參對應的實參

​ (2)如果形參中指定了預設值,在實參彙總傳遞該引數後,最終引數以傳遞的實參為準

​ 4、不定長引數:

​ (1)*a 接受傳遞單個值,儲存為元組

​ (2)**b 接受鍵值對形式的引數,儲存為字典格式

# 位置引數的案例

def test(name, age):

'''對函式的作用進行描述'''

print(name + ":" + str(age))

# 關鍵字引數的案例

def must_test(name, age):

'''對函式的作用進行描述'''

print(name + ":" + str(age))

# 預設值引數的案例

def default_test(name,age=18):

'''對函式的作用進行描述'''

print(name + ":" + str(age))

#不定長引數的案例:

def no_test(*args,**b):

print(args)

print(b)

# test('test',18)

# must_test(age=18, name='test')

#default_test(name='test')

#no_test((1,2,3))

#no_test(name='test',age=18)

#針對range函式,編寫乙個方法進行呼叫,要求如下:

#1、傳遞起始值、終止值、步長

def range(a,b,c):

print('range'+'('+str(a)+','+str(b)+','+str(c)+')')

range(1,101,2)

#2、起始值和終止值必傳,步長可選

def range_1(a,b,c):

print('range'+'('+str(a)+','+str(b)+','+str(c)+')')

range_1(1,101,c=1)

#3、起始值必傳,終止值和步長可選

def range(a,b,c):

print('range'+'('+str(a)+','+str(b)+','+str(c)+')')

range(1,b=108,c=6)

#4、起始值和終止值必傳,步長預設

def range(a,b,c=3):

print('range'+'('+str(a)+','+str(b)+','+str(c)+')')

range(1,101)

#return語句返回簡單型別

def test ():

return 'hello'

#return語句返回字典

def show_info(name,age):

person =

return person

#print(test())

#print(show_info('test',18))

#使用者問候

def say_hi(first_name,last_name):

'''返回完整的名字'''

full_name = first_name + '' + last_name

return full_name

while true:

print('請輸入您的姓名:')

f_name = input('姓:')

if f_name == 'q':

break

l_name = input('名:')

if l_name == 'q':

break

#呼叫函式

format_name = say_hi(f_name,l_name)

print('hello',format_name+'!')

#傳遞列表型別資料

def test(names):

for name in names:

print(name)

user_name = ['sdf','werwe','werwerwer','adfa']

test(user_name)

Python函式引數型別

函式的引數 定義函式 引數 普通引數,預設引數,可變引數 可變位置引數,可變關鍵字引數 keyword only 引數 呼叫函式 傳參 位置引數,關鍵字引數,引數結構 位置引數解構,關鍵字引數解構 普通引數 x,y def add x,y return x y 預設引數 x 1 def inc ba...

python 函式引數型別檢查

python在3.5後引入了引數型別註解,例 def add x int,y int int 對x,y和返回值都進行注釋,為int型別 return x y注 註解是對函式引數和返回值的 注釋 沒有強制定義的作用 因為python是動態語言啊 那麼既然註解不能強制定義型別,在函式呼叫中怎麼判斷傳入的...

python 函式引數型別檢查

在python中,不知道函式引數型別是乙個很正常的事情,特別是在乙個大專案裡。我見過有些專案裡,每乙個函式體的前十幾行都在檢查引數型別,這實在是太麻煩了。而且一旦引數有改動,這部分也需要改動。下面我們用裝飾器來實現,函式引數的強制型別檢查。首先,這個裝飾器,要接受型別引數,和指定函式引數的型別引數。...