python 函数相关定义

函数分为定义和调用2个状态。

函数定义的时候,参数称为形参,调用的时候,参数称为实参。形参没有具体的值,但是实参有值。

函数定义时,指定了默认值的参数是默认参数。默认参数的位置必须放在最后位置。

函数定义时,不确定参数的个数,可以使用非固定参数:列表(*args) 和 字典(**kwargs)定义。这样,函数调用时,位置参数放在列表里,指定了key=value这种形式的参数会被放在字典里。

函数调用时,以位置顺序确定对应关系的参数称为位置参数;指定了参数名的参数称为关键参数。关键参数必须放在位置参数后面。

 

在python中,‘变量就近查找’是对实参而言。

这与c语言不同。对c语言来说,不分函数定义和调用,变量总是就近查找。

代码1:

def test():
    print(str_temp)
    str_temp = 'e'
str_temp = "the king of sea."
test()

Python下,代码1会报错:UnboundLocalError: local variable 'luffy' referenced before assignment

 

代码2:

def test():
   print(str_temp)
str_temp = "the king of sea."
test()

Python下,代码2不会报错,打印"the king of sea."  但在c语言里会报错,因为变量str_temp在定义前使用。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值