函式名是變數,它在建立函式時繫結乙個函式
#示例: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):
(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)
(myinput(max))
(myinput(min))
(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 是兩個不同作用的域內的變數
(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函式呼叫的時候 特點的情況 按位置引數進行拆包,如果 元組 列...