最近写python遇到个函数内部变量使用外部变量的问题,现在总结下吧 #!/usr/bin/env python a = 100def su(): a = a + 1 print(a) s = su() #执行这段代码会报错(如果只是调用不修改是不会报错的) 更改为: #!/usr/bin/env python a = 100def su(): global a a = a + 1 print(a) s = su() 总结: 在python的函数中和全局同名的变量,如果修改变量的值就会变成局部变
首先,来看一个一般意义的求和: >>> def cal_sum(*args): ... sum = 0 ... for i in args: ... sum = sum + i ... return sum ... >>> cal_sum(1,2,3,4) 10 如果我们这么定义呢: >>> def lazy_sum(*args): ... def sum(): ... sum = 0 ... for i in args: ... sum = sum
函数返回值 多条return语句: def guess(x): if x > 3: return "> 3" else: return "<= 3" def showplus(x): print(x) return x + 1 return x + 2 #执行结果 10 11 #从结果来看 出现第一个return后 下面的就不会执行 def fn(x): for i in range(x): if i > 3: return i else: