抽象类学习
1、python中的抽象实际是对细节的隐藏,增加程序的可读性,函数是其中的一种。
2、函数的定义方式def,一般在结尾需要返回一个值(return **),当然,也可以什么都不返回,比如直接print。
3、作用域,我们一般不用全局变量,避免出错,局部变量也是提高效率的一种方式。
4、递归,函数的自我调用就是一种递归,一切递归都可以用循环来实现,但有时候递归会提高效率,同时也能提高可读性。
递归的两个例子:
①幂次方
普通的循环求幂次方:
1 def mici(n,i): 2 if i==0: 3 return 1 4 else: 5 re=n 6 for x in range(1,i): 7 re*=n 8 return re
递归方法求幂次方:
递归思想:
1、对于任何数 mici(x,0)=1
2、对于mici(x,y)也就是X*mici(x,Y-1)
def mici2(x,y): if y==0:return 1 else: return x * mici2(x,y-1)
例子②阶乘:
普通循环求阶乘:
1 def jiechen(n): 2 result=n 3 for i in range(1,n): 4 result*=i 5 return result
递归方法求阶乘:
递归思想:1的阶乘是1,大于1的阶乘是n*jiechen2(n-1)
def jiechen2(n): if n==1: return 1 else: return n*jiechen2(n-1)