Python 函式變數

2022-07-26 04:12:07 字數 3657 閱讀 2776

函式名是變數,它在建立函式時繫結乙個函式

#

示例:def

f1():

print("

f1函式被呼叫")

f2 = f1 #

兩個變數同時繫結乙個函式

f2() #

f1 函式被呼叫

#示例2:

deff1():

print("f1"

)def

f2():

print("f2"

)f1,f2 =f2,f1

f1()

# f2

乙個函式可以作為另乙個函式的實參傳遞

#

示例:function_as_args.py

deff1():

print("

f1被呼叫")

deff2():

print("

f2被呼叫")

deffx(fn):

print

(fn)

fn()

#呼叫函式

fx(f1)

defgoodbye(l):

for x in

l:

print("

再見:"

,x) 看懂

defoperator(fn,l):

fn(l)

operator(goodbye,[

"tom

","jerry

","spike

"])

#

看懂下列**:

defmyinput(fn):

l = [1,3,5,7,9]

return

fn(l)

print

(myinput(max))

print

(myinput(min))

print

(myinput(sum))

#函式可以作為另乙個函式的返回值

#示例見:

#function_as_return_value.py

defget_function():

s = input("

請輸入你要做的操作:")

if s == "

求最大"

:

return

max

elif s == "

求最小"

:

return

min

elif s == "球和"

:

return

suml=[2,4,6,8,10]

f =get_function()

print("

f繫結:

",f)

print(f(l))

#

寫乙個計算公式的解釋執行器##

def myadd(x,y):

#return x+y

#def mysum(x,y):

#return x-y

#def mymul(x,y):

#return x * y

#定乙個帶有乙個引數的函式 get_func(s):

#def get_func(s):

#... # 此處自己實現

#此函式的在傳入字串「加」或「+」返回myadd函式:

#此函式的在傳入字串「乘」或「*」返回myadd函式:

#在主函式中程式如下:

#def main():

#while true:

#s = input("請輸入計算公式:") # 10 加 20

#l = s.split() # l = ["10","加","20"]

#a = int(l[0])

#b = int(l[2])

#in = get_fuc(l[1])

#print("結果是:",fn(a,b))

defmyadd(x,y):

return x+y

defmysum(x,y):

return x-y

defmymul(x,y):

return x *y

defget_func(s):

if s == "加"

or s == "+"

:

return

myadd

elif s == "減"

or s == "-"

:

return

mysum

elif s == "乘"

or s == "*"

:

return

mymul

defmain():

while

true:

s = input("

請輸入計算公式:

") #

10 加 20

ifnot

s:

break

l = s.split() #

l = ["10","加","20"]

a =int(l[0])

b = int(l[2])

fn = get_func(l[1])

print("

結果是:

",fn(a,b))

main()

函式的巢狀定義

函式巢狀定義是指乙個函式裡用def語句來建立其他函式的情況

#

示例見:

#function_embed_def.py

#此示例示意函式的巢狀定義

deffn_outer():

print("

fn_outer被呼叫")

#此處能否建立新的函式並且呼叫呢?

deffn_inner():

print("

fn_inner被呼叫!")

fn_inner()

#呼叫函式內部的fn_inner

fn_inner()

print("

fn_outer呼叫結束")

fn_outer()

#

作用域也叫名字空間,是訪問變數時查詢變數名的範圍空間

#示例:

a = 100

deffx():

a = 10000 #

a = 10000 和 a = 100 是兩個不同作用的域內的變數

print

(a)fx()

print(a)

作用域                   英文解釋                         英文簡寫

區域性作用域(函式內) local(function) l

外部巢狀函式作用域 enclosing function local e

函式定義所在模組的作用域 global(module) g

python 內建模組的作用域 builtin(python) b

python函式變數教程 Python 函式變數

函式變數 函式名是變數,它在建立函式時繫結乙個函式 示例 def f1 print f1函式被呼叫 f2 f1 兩個變數同時繫結乙個函式 f2 f1 函式被呼叫 示例2 def f1 print f1 def f2 print f2 f1,f2 f2,f1 f1 f2 乙個函式可以作為另乙個函式的實...

Python 函式的變數

函式的變數分為區域性變數和全域性變數 python中的任何變數都有自己特定的作用域 在函式中定義的變數一般只能在該函式內部使用,這些只在程式的特定部分使用的變數叫做區域性變數 在乙個檔案頂部定義的變數可以供檔案中任何函式呼叫,這些為整個程式所使用的變數叫做全域性變數 呼叫規則 全域性變數可以在函式內...

Python 函式與變數

函式定義的時候 按位置引數打包,使用 args 打包所有的位置引數為乙個元組 按關鍵字引數打包,使用 kwargs 打包所有的關鍵字引數為乙個字典 什麼時候使用打包 不確定引數的數量的時候 def 函式名 args,kwargs pass函式呼叫的時候 特點的情況 按位置引數進行拆包,如果 元組 列...