第九章 变量和参数

变量作用域

  1. 变量的作用域是指,在程序的哪些地方可以使用变量
  2. 局部(local)变量:在函数内定义的变量;只能在函数内使用或修改
  3. 全局(global)变量:在函数外定义的变量;在函数内外均可使用,但不能在函数内直接修改;如果一定要在函数内修改全局变量的值,需要使用global关键字
  4. 函数内定义的变量可以和函数外的变量重名
  5. 函数参数也是局部变量
  6. 获取函数名        print(f.__name__)
  7. 获取函数注释     print(f.__doc__)
局部变量 和 全局变量 比较

参数扩展

  1. 默认值参数:定义函数时,可以设置参数的默认值;调用函数时,可以不给默认参数传值,此时会直接用我们设置的默认值赋值
  2. 默认值参数必须从后往前设置
  3. 顺序参数 f(1,2,3)
  4. 关键词参数 f(a = 1, c = 3, b = 2),例如 print 中的end和sep
  5. 在函数调用时,如果使用了关键词参数,那么后面的参数都必须使用关键词
  6. 形参 parameter
  7. 实参 argument
  8. 调用函数时,实参传递给形参

可变参数

  1. 可变参数就是可以传递任意数量的参数值,用 * 进行定义
  2. def f(*args):
  3. 在函数体中,可变参数 args 中保存了所有参数,是元组类型
  4. 可变参数不能用关键词进行赋值
  5. 同一个函数最多只能有一个可变参数
  6. 调用函数时,可变参数之前,可以定义普通参数,且这些普通参数只能采用顺序赋值,不支持关键词赋值
  7. 调用函数时,可变参数之后,可以定义普通参数,且这些参数只能使用关键词赋值,不能使用循序参数

 

可变关键词参数

  1. 用 ** 进行定义
  2. def f(**kwargs):
  3. 在函数体中,可变参数 args 中保存了所有参数,是元组类型
  4. **kwargs 只能出现在参数列表中最后的位置

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值