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(关键参数,通过相同参数名设置)
并且关键参数在指定参数名后就不需要顺序,第三个例子