x =
2def
func()
: y =
20print
(x)print
(y)func(
)#結果為2,20,x為全部變數,可以在區域性使用。
print
(y)#nameerror: name 'y' is not defined,y為區域性變數,無法在全域性使用。
def
improve()
:global f
f =100 g =
200improve(
)#注意這裡結果improve和print(f)不能反著,因為先執行了函式f變數才能被提公升
print
(f)
#eval
x =10
y =3.1415926
c =eval
("x + y"
)print
(c)#結果為13.1415926
#exec
x =10
y =3.1415926
c =exec
("x + y"
)print
(c)#結果為none
z =exec
("print('x + y:',x + y)"
)#裡面的print結果先輸出,再通過exec返回值沒有
print
(z)'''結果為
x + y: 13.1415926
none
'''
#遞迴函式舉例
defdigui()
: x =
1 x +=
1print
(x) digui(
)
def
fibo
(n):
if n <=0:
print
("數字必須大於0"
)if n ==1:
return
1if n ==2:
return
1return fibo(n -1)
+ fibo(n -
2)
def
hano
(n, a, b, c)
:'''
n:有多少個盤子
a:第乙個塔,開始的塔
b:第二個塔,中間的塔
c:第三個塔,目標的塔
'''if n ==1:
print
(a,"-->"
, c)
return
none
if n ==2:
print
(a,"-->"
, b)
print
(a,"-->"
, c)
print
(b,"-->"
, c)
return
none
#先通過c,把a上的n-1個盤子移動到b
hano(n -
1, a, c, b)
print
(a,"-->"
, c)
#最後通過a,將b上的n-1個盤子移動到c
hano(n -
1, b, a, c)
python基礎 函式,作用域介紹(八)
函式,函式也是乙個物件 物件是記憶體中用來儲存資料的區域。函式可以用來儲存一些可執行 並且在需要的時候對這些 多次呼叫。建立函式 def 函式名 塊 def fn print this is my first function 函式中的 塊不會直接執行,需要呼叫該函式fn 後才會執行。print f...
Python 函式作用域
python中變數作用域分4種情況 x max 1,6 max為系統變數,它的作用域為python的所有模組 y 1 y為全域性變數,它的作用域為當前模組 defouter i 3 i的作用域為當前函式,包括巢狀函式 definner count 2 count為區域性變數,作用域只在當前函式有效函...
PowerShell入門(八) 函式 指令碼 作用域
指令碼所體現的是powershell的程式設計特性,是任務自動化的基礎。函式是比指令碼粒度更細的 復用單元,可以定義在命令列中或者指令碼中。作用域就是變數和函式的作用範圍,是執行上下文的劃分。函式函式就是命名的命令列表,與一般程式語言中的函式概念具有相同的範疇。函式中不但可以有簡單命令,還可以有控制...