1. 自定义函数(可以有一个默认参数)
def function_name():
2. 传递函数arguements
return ()
def addMe(x):
return x+x
def self(f,y):
print (f(y))
self(addMe,2)
3. lambda函数
r=lambda x: x+x
print (r(5))
4. 递归
# the nth Fibonacci number
def fib(n):
a,b=0,1
count=1
while count < n:
a,b=b,a+b
count=count+1
print a
# the nth Fibonacci number
def fib(n):
if n==0 or n==1:
return n
else:
return (fib(n-1)+fib(n-2))
5. 汉诺塔
# filename: Hanoi.py
def hanoi(a,b,c,n):
if n==1:
print(a,'->',c)
else:
hanoi(a,c,b,n-1)
print(a,'->',c)
hanoi(b,a,c,n-1)
若有n个盘子,共移动2的n次方-1次
6. 变量作用域
- 全局变量
- 局部变量