重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Python中的函数不可以重名
创新互联公司是一家朝气蓬勃的网站建设公司。公司专注于为企业提供信息化建设解决方案。从事网站开发,网站制作,网站设计,网站模板,微信公众号开发,软件开发,微信小程序,十载建站对玻璃钢雕塑等多个方面,拥有丰富的网站制作经验。
如果重名了,后面定义的会覆盖前面定义的函数
2.变量也不可以和函数同名
否则,也是后面覆盖前面的。所以,变量命名就不可以与内置函数同名了,比如input=3那就不能再使用input了
3.递归函数:我调用我自己
def get_sum(n):
if n==0:
return 0
return get_sum(n-1)+n
print(get_sum(100))
比如这个1+2+3+4+...+100
递归的最重要的点就是找到程序的出口,也就是什么时候不再进行递归了,或者说什么时候进行递归
4.匿名函数
python中,函数是可以作为参数给另外一个函数用的
def add_nums(a,b):
return a+b
def sub_nums(a,b):
return a-b
def mul_nums(a,b):
return a*b
def div_nums(a,b):
return a/b
def calculate(a,b,fn):
return fn(a,b)
x=calculate(3,4,add_nums)#这里,直接写函数的名字就可以了!!!好智能啊0.0
print(x)
-----------------------------------
不可以一样。一般这种编程的函数和它的变量不能让她是一样的如果你设成一样的之后。在程序调动的过程中,它会区分不出来是函数还是变量就会导致程序运行死机。所以在定义的时候你如果变量名和函数是一样的,这个时候可能系统会提示你的。
你好,请看下面的例子和说明:python中类的初始化方法是__init__(),因此父类子类的初始化方法都是这个,如果子类不实现这个函数,初始化时调用父类的初始化函数,如果子类实现这个函数,就覆盖了父类的这个函数,既然继承父类,就要在这个函数里显式调用一下父类的__init__(),这跟C++,jAVA不一样,他们是自动调用父类初始化函数的。调用父类函数有以下方法:class A:def method(self, arg):pass class B(A):def method(self, arg):# A.method(self,arg) # 1# super(B, self).method(arg) #2super().method(arg) #31.直接写类名调用2.用super(type,obj).method(arg)方法调用。3.在类定义中调用本类的父类方法,可以直接super().method(arg).在代码中调用对象的父类的方法的示例:ob = B()super(B,ob).method(arg) #调用class B的父类class A的method。初始化中调用父类初始化方法示例:class B(A):
局部优先
所有函数中的变量赋值都是将值存储在局部符号表。变量引用首先在局部符号表中查找,然后是包含函数的局部符号表,然后是全局符号表,最后是内置名字表。