Python学习笔记(五)函数

函数定义

Python中的函数定义规则如下:

  • 函数通过关键字def来定义,后接函数标识符名称和圆括号()。
    • 任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
    • 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
    • 函数内容以冒号起始,并且缩进。
    • return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None

示例如下:

def function(parameters):
    函数体
    return [expression]
局部变量与全局变量

函数的参数没有类型,类型都是对象。
在函数中定义的变量为局部变量,作用范围仅限于函数内。
如果想给一个在程序顶层的变量赋值(也就是说它不存在于任何作用域中,无论是函数还是类),那么必须要通过 global 语句声明告诉 Python 这一变量并非局部的,而是全局(Global)的。
代码示例:

x = 0
def func_1():
    x=1;
    print('func_1 executed!')
def func_2()
    global x=2;
    print('func_2 executed!')
print('x=',x)
func_1()
print('x=',x)
func_2()
print('x=',x)

代码运行结果如下:

x= 0
func_1 executed!
x= 0
func_2 executed!
x= 2
默认参数值

Python和C++一样可以设置函数参数的默认值,规则也一样,没有默认值的参数在左,有默认值的参数在右。

关键字参数

当函数中的参数较多而只想要对部分参数赋值时,可以使用关键字参数赋值。即在赋值时对变量命名,只要保证未赋值的变量具有默认的参数值即可。
这种在赋值时指明变量名称的方法,可以无视赋值时的顺序对指定变量赋值。

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

值得注意的是,在接下来的可变参数中,关键字参数也可以作为可变参数进行扩展

可变参数

当参数的数目不定时,可以使用可变参数,即*param的形式,收集所有从该位置开始到结束的参数,汇集成为一个param的元组,而关键字参数则形成字典,需要给定变量名和值,格式为**param。示例如下:
示例

return语句

return语句用于中断函数并返回,默认返回None,,代表一个变量没有值。

pass语句

pass用于指示一个没有内容的语句块。

文档字符串(DocStrings)

文档字符串是对函数的说明解释,函数的第一行逻辑行中的字符串是该函数的 文档字符串。约定文档字符串是一串多行字符串,其中第一行以某一大写字母开始,以句号结束。第二行为空行,后跟的第三行开始是任何详细的解释说明。可以通过调用function(函数名)._doc_来获取任一函数的文档字符串。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值