python函式基礎知識

2021-10-06 02:34:19 字數 4431 閱讀 7754

#函式的定義的格式

#def 函式名(引數[可選]):

#功能**的實現

#定義函式不會呼叫

defshow()

:print

("我叫張三丰,年齡18"

)#呼叫函式

#函式名(引數)

#定義帶有引數的函式

#name,age:形式引數(函式定義帶有的引數叫形式引數)形參

defshow_msg

(name,age)

:print

(name,age)

#呼叫帶有引數的函式"張三",20:實際引數(實參)

show_msg(

"張三",20

)

#無引數無返回值得函式

defshow()

:#函式'體裡面的**執行完畢,返回到函式的呼叫出

print()

#函式呼叫

show(

)#無引數有返回值的函式

defshow()

: result =

10#帶著資料返回到**的呼叫處

return result

value = show(

)print

(value)

#有引數無返回值的

defshow

(name,age)

:print

("我叫:%s 年齡:%d"

%(name,age)

)show(

"張三",19

)#有引數有返回值的

defshow_msg

(name,age)

: msg =

"我叫:%s 年齡:%d"

%(name,age)

return msg

result = show_msg(

"李四",40

)print

(result)

#定義函式是不會執行函式體裡面的**

defshwo()

:print

("哈哈"

)print

("呵呵"

)shwo(

)print

("lll"

)#總結:函式呼叫的時候會返回到函式的定義處,執行函式體裡面的**

#執行完畢,返回的呼叫處

#全域性變數:在函式外定義的變數叫做全域性變數

#特點:全域性變數可以在不同的函式裡面使用

score =

100def

show()

:#定義了乙個區域性變數,只不過這個區域性變數和全域性變數的名字一樣

# score =99

#修改全域性變數

global score#表示要對全域性變數score修改資料

score =

99print

(score)

show(

)print

(score)

函式傳參方式:

#呼叫函式的傳參方式:1.使用位置傳參2.使用關鍵字傳參

defshow

(name,age)

:print

(name,age)

print

("架架"

)#使用位置引數方式傳參:必修按照函式的引數順序去傳參

show(

"張三",18

)#positional argument:丟失了乙個位置引數

#使用關鍵字方式傳參

#使用關鍵字傳參,可以不按照函式引數的順序去傳參

show(age=

19,name=

"李四"

)#前面使用關鍵字傳參,後面使用位置傳參(不可以的)

# show(age=19,"張三")

#前面使用位置傳參,後面使用關鍵字傳參可以使用

#關鍵字傳參,必須放在最後

show(

"馮七"

,age=

10)

#函式的不定長引數:1.不定長位置引數2,不定長關鍵字引數

#不定引數:呼叫函式的時候不確定傳入多少個引數

#可能是0個或者多個

#--------------不定長位置引數的定義及呼叫--------------

#*args代表不定長位置引數,約定俗稱起的名字

defsum_num

(*args)

:print

(args,

type

(args)

)#計算結果變數

result =

0for value in args:

result += value

return result

result = sum_num(1,

2,3,

4,6,

8)print

(result)

# sum_num(a=1,b=2)

#------------不定長關鍵字子引數函式的定義及呼叫-------

#**kwargs 代表不定位置引數

defshow_msg

(**kwargs)

:print

(kwargs,

type

(kwargs)

)for key,value in kwargs.items():

print

(key,value)

#呼叫不定長位置引數的函式

show_msg(a=

1,b=2)

#使用位置引數的方式呼叫不定長關鍵字引數的函式

# show_msg(1,2)

# def pachong():

# #1.232323

# data = "asdasd"

# return data##

# data = pachong()

# print(data)

#爬蟲:只能抓取使用者有許可權能看見的資料

#定義不定長位置引數

defshow_msg

(*args)

:#(1,2)

print

(args)

#定義不定長位置引數

defshow

(*args)

:# print(args,type(args))

# (1,2)

print

(args)

#解決辦法:對元組進行拆包

show_msg(

*args)

# show_msg(args)

show(1,

2)

def

show_msg

(name,age,

*args,

**kwargs)

:print

(name,age,args,kwargs)

#不能使用下列方式呼叫,因為前面使用了關鍵字傳參,後面不能使用位置傳參

# shwo(name="李四",age=18,1,4,c=1,b=2)

# shwo("李四",20,1,2,3,4,a="蘋果",b="香蕉")

#可不可以

defshow

(*args,name,age,

**kwargs)

:print

(args,name,age,kwargs)

#kwargs必須放置在後面(不定長關鍵字引數放置在後面)

show(1,

2,name=

"李四"

,age=

12,aa=

1,bb=2)

#注意點:*後面的引數,必須使用關鍵字傳參方式

defcallable

(address,***,

*,name,age)

:print

(address,***,name,age)

#使用位置傳參的方式呼叫函式

callable(

"上海"

,"男"

,name =

"劉彥"

,age=

20)

def

show_msg

(**kwargs)

:print

(kwargs)

#定義不定長關鍵字函式

defshow

(**kwargs)

:print

(kwargs)

#使用了位置傳參的方式呼叫函式

# show_msg(a=kwargs)

# 對字典進行拆包

show_msg(

**kwargs)

show(a=

1,b=

2)

python基礎知識 函式

函式其實就是一段可以多次呼叫的 1 函式的定義 格式 def 函式名 引數1 預設值1 引數2 預設值2 return 表示式 函式名的命名規則 函式名可以是字母 數字或下劃線組成的字串,但是不能以數字開頭。例如加法操作 def addfunc x,y return x y print addfun...

python函式基礎知識

1,函式返回值有多個 def func ip 127.0.0.1 port 3389 return ip,port ip,port func 即可得到ip和port的值 2,函式legb 引數尋找順序 l local 本地作用域 e enclosing function 上一層結構中def或lamb...

python基礎知識 函式

def myfirstfunction print this is my first function myfirstfunction 呼叫函式def mysecondfunction print name i love you mysecondfunction fish 呼叫函式 mysecond...