自定義函式

2022-09-05 06:03:08 字數 2061 閱讀 7585

一、.函式:

如果檢測乙個元素的長度用len非常簡單,也可以寫個迴圈來做。

s = '

asd'

defmy_len():

i =0

for k in

s: i += 1

print

(i)my_len()

二、.返回值:

如果print列印這個函式,結果返回none,如果想要有返回值的話就要用return i。

在函式裡遇到return直接退出函式。

return返回值的3種情況: 遇到return直接退出函式

沒有返回值: 返回none

1.不寫return

2.只寫return 

3.return none

返回1個值:

1.可以返回任何資料型別

2.只要返回就可以接收到

3.如果在乙個程式中有多個return,那麼只執行第乙個return就退出函式

返回多個值:

1.用多個變數接收:有多少返回值就用多少變數接收

2.用乙個變數接收:得到的是乙個元祖

三、傳參函式

還是列印元素長度,但是元素不固定,可以自己輸入就需要用到傳參了。    

def

func(s):        #行參

i =0

for j in s:

i += 1

return

iprint(func('asdf'))    #實參

通過s傳入引數。

引數:沒有引數:定義函式和呼叫函式時括號裡為空。

有乙個引數:傳什麼就是什麼

有多個引數:位置引數

引數分類:

行參:順序:位置引數、*args、預設引數、**kwargs

位置引數:直接定義引數

預設引數(關鍵字引數):引數名 = 『預設的值』  #如果實參裡也定義了,實參優先

動態引數:可以接受任意多個引數

#多個位置引數:*args  接收按照位置傳參的值,組成乙個元祖。

#多個預設引數:**kwargs  接收按照預設傳參的值,組成乙個字典。

實參:按照位置傳參:位置引數需要幾個就傳幾個值,*args無限傳。

按照關鍵字傳參:如果行參有預設引數可以不傳值,傳了的按照實參的值執行,有**kwargs可以無限傳。

位置引數

def

func(x,y):

if x >y:

print

(x)

else

:

print

(y)func(3,2)

預設引數

def func(x=1,y=4):

if x >y:

print

(x)

else

:

print

(y)func()

動態傳參

def func1(*args):

print

(args)

func1(1,2,3)

def func2(**kwargs):

print

(kwargs)

func2(a = 1,b = 2,c = 3)

動態引數另一種傳參方式:傳入列表或字典。

def func1(*args):

print

(args)

func1(1,2,3)

l = [1,2,3]

func1(*l)

def func2(**kwargs):

print

(kwargs)

func2(a = 1,b = 2,c = 3)

d =

func2(**d)

四、函式注釋:   

def func():

'''這個函式實現了什麼功能

引數1:

引數2:

:return:

'''

自定義函式 Excel之自定義函式

在excel中,當系統函式不能滿足我們的需求時候,我們可以使用vba自定義函式,如抓取網頁資料,翻譯詞彙,手機號歸屬地查詢等。下面將介紹2個自定義函式,idymd函式 身份證年月日性別 通過身份證號,返回性別,出生年月日。語法 idymd id 引數 id,身份證號,預設身份證長度18位。vba 如...

自定義函式

使用者自定義函式是sqlserver的資料庫物件,他不能應用於一系列改變資料庫狀態的操作。但它可以像系統函式那樣在查詢中或儲存過程中等中的程式段中使用。也可以像儲存過程一樣通過execute命令來執行,使用者自定義函式中儲存了transact sql可以返回一定的值。在sqlserver中根據函式返...

自定義函式

自定義函式有標量值函式和錶值函式。標量值函式 如果返回結果指定一種資料型別,則函式為標量值函式。錶值函式 如果返回結果指定table則函式為表值函式。基本語法示例 標量值函式 create function funadd a int return int asbegin declare b int ...