python函数

python的函数比较简单,主要关注以下特性即可:作用域、默认参数、关键参数。

作用域

默认在函数中的变量如果和外面的一样,那么会把外面的遍历屏蔽,即对其做改变不会影响外面变量的值;如果想要改变可以使用global关键字。

例子

#!/usr/bin/python

x = 10
y = 20

def func():
    global x
    x = 50
    y = 100

func()

print 'Value of x is', x
print 'Value of y is', y

运行结果

Value of x is 50
Value of y is 20


默认参数

对于一些函数,你可能希望它的一些参数是可选的,如果用户不想要为这些参数提供值的话,这些参数就使用默认值。这个功能借助于默认参数值完成。你可以在函数定义的形参名后加上赋值运算符(=)和默认值,从而给形参指定默认参数值。

只有在形参表末尾的那些参数可以有默认参数值,即你不能在声明函数形参的时候,先声明有默认值的形参而后声明没有默认值的形参。 这是因为赋给形参的值是根据位置而赋值的。例如,def func(a, b=5)是有效的,但是 def func(a=5, b)是无效的,这和C++是类似的。

例子

#!/usr/bin/python

def say(message, times = 1):
    print message * times

say('Hello')
say('World', 5)

运行结果

Hello
WorldWorldWorldWorldWorld

关键参数

如果某个函数有许多参数,而只想指定其中的一部分,那么可以通过命名来为这些参数赋值,这就是关键参数,即使用名字(关键字)而不是位置(我们前面所一直使用的方法)来给函数指定实参。

这样做有两个好处:

1. 由于我们不必担心参数的顺序,使用函数变得更加简单了。

2. 假设其他参数都有默认值,我们可以只给我们想要的那些参数赋值。

例子

#!/usr/bin/python

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 is 3 and b is 7 and c is 10
a is 25 and b is 5 and c is 24
a is 100 and b is 5 and c is 50


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值