global 的使用
全局变量
在方法中声明global 前缀的变量是全局变量
def
func
():
global
x
print
'x is'
, x
x =
2
print
'Changed local x to'
, x
x =
50
func()
print
'Value of x is'
, x
会输出50
2
2
因为x是global修饰的,所以可以去到全局的x变量,即50,在方法中进行了修改,则把全局变量修改为了2
可指定多个全局变量
默认参数
def
say
(message, times =
1
):
print
message * times
say(
'Hello'
)
say(
'World'
,
5
)
会输出 hello
WorldWorldWorldWorldWorld
times有一个默认值,如果方法中只传入一个参数时,则默认times为1,则输出一次Hello
注意:默认参数是有顺序的,func(a,b=2)是有效的,func(b=1,a)是无效的
关键参数
def
func
(a, b=
5
, c=
10
):
print
'a is'
, a,
'and b is'
, b,
'and c is'
, c
func(
3
,
7
)
func(
25
, c=
24
)
func(c=
50
, a=
100
)
关键参数是可以通过参数名来指定是某个参数的值,
如果不指定的话,默认按照方法参数的顺序
例如第一个:相当于a=3 b=7 c=10(默认)
第二个指a = 25 b=5(默认) c=24(关键参数,通过相同参数名设置)
并且关键参数在指定参数名后就不需要顺序,第三个例子
a = 100 b=5 c=50