发现一个问题. python中list变量作为全局变量时,在函数中可以直接修改. 而普通变量则需要先在函数中global声明,否则会报错. 例如: a = 1 def fun(): global a a = 2 而list: b = [1,2] def fun(): b[0] = 2 在函数中直接修改list则是可以的. 原因是: 普通变量如果在函数中赋值 a = 2 会有歧义.因为它既可以是表示引用全局变量a,也可以是创建一个新的局部变量,所以在python中,默认它的行为是创建局部变量,除非
python中函数定义方法: def test(x): "The function definitions" x+=1 return x def:定义函数的关键字test:函数名():内可定义形参"":文档描述(非必要,但是强烈建议为你的函数添加描述信息)x+=1:泛指代码块或程序处理逻辑return:定义返回值 调用运行:可以带参数也可以不带函数名() 补充:数学函数和编程函数的不同: 不同的是数学意义的函数,传入值相同,得到的结果必然相同且没有任何变量的修改(不
1,函数的变量 2,函数的返回值 1,函数的变量 1.0,函数的变量分为局部变量和全局变量. def fun(): x = 100 print x 这个x是局部变量,函数执行完后,x的变量就会销毁,只能在函数内部有效. x = 100 def fun(): print x print x 这里的x = 100'是全局变量,函数内部也可以调用.但是调用的只能用于print,做其他操作都会报错(这里的x可以是数字或者字符串).比如: x = 100 def fun(): print x x+=1 像