局部变量与全局变量,python变量与我们平时java中的作用域一样。全局变量的声明用global
另,global还有可以一次过声明多个变量的,如: global x,y,z
[size=medium]默认参数值:[/size]
即是指在一个函数的参数中,可以设置数值。但由于是按位置进行赋值的,所以有默认参数的参数要放在没有默认参数的后面,即
从以上的例子档以看到在调动有默认参数的函数时,python会自己找到相对应的函数来调用。
如果以上的例子改为:
[size=medium]关键参数:[/size]
即是说在调用函数时就已经指定参数值,而被调用的函数会根据传过来的参数来运行。代码如下:
需要注意的是,在调用定义函数时,如果在定义的方法有不是关键参数形式的,如前面的x,在调用时,一就是按位置顺序来确定,一就是直接写值上去(x=67)指定。若是第二种,三个参数的位置可以不确定,都是通过关键字来指定数值。
def func():
global x='100';
print x;
x='80';
print x;
结果为:
100
80
另,global还有可以一次过声明多个变量的,如: global x,y,z
[size=medium]默认参数值:[/size]
即是指在一个函数的参数中,可以设置数值。但由于是按位置进行赋值的,所以有默认参数的参数要放在没有默认参数的后面,即
def func(x,y=5):
print "x:",x," y:",y;
func(110);
func(110,99)
结果为:
x:110 y:5
x:110 y:99
从以上的例子档以看到在调动有默认参数的函数时,python会自己找到相对应的函数来调用。
如果以上的例子改为:
def func(str,num):
print "######:",str*num;
func('laotang');
func('hi ',5);
则结果为
laotang
hi hi hi hi hi (如果字符串与数字相乘,则会自动重复(数字个)字符串。
[size=medium]关键参数:[/size]
即是说在调用函数时就已经指定参数值,而被调用的函数会根据传过来的参数来运行。代码如下:
def func(x,y=1,z=2):
print "x:",x," y:",y," z:",z
func(10)
func(10,z=11)
func(z=20,x=34)
func(z=20,y=12,x=67)
结果如下:
x:10 y:1 z:2
x:10 y:1 z:11
x:34 y:1 z:10
x:67 y:12 z:20
需要注意的是,在调用定义函数时,如果在定义的方法有不是关键参数形式的,如前面的x,在调用时,一就是按位置顺序来确定,一就是直接写值上去(x=67)指定。若是第二种,三个参数的位置可以不确定,都是通过关键字来指定数值。