美文网首页
python 定义带有默认参数的函数

python 定义带有默认参数的函数

作者: 孙广宁 | 来源:发表于2022-05-24 20:00 被阅读0次
7.5 定义一个函数带有一个或多个参数是可选的并带有默认值
>>> def m(a,b=30):
...     print(a,b)
...
>>> m(5)
5 30
>>> m(5,31)
  • 如果默认值是可变类型,如数组、元组等,那么可以把None作为默认值
>>> def m1(a,b=None):
...     print(a,b)
...
>>> m1(5)
5 None
>>> m1(5,(6,7))
5 (6, 7)
>>> m1(5,[6,7])
5 [6, 7]

*如果不打算提供一个默认值,想让函数自己检测出来,可以用如下方法

>>> _no_value=object()
>>> def m2(a,b=_no_value):
...     if b is _no_value:
...         print("b is no value")
...     else:
...         print(b)
...
>>> m2(5)
b is no value
>>> m2(5,6)
6
>>> m2(5,(6,7))
(6, 7)
>>> m2(5,[6,7])
[6, 7]
>>> m2(5,{6,7})
{6, 7}
>>>
  • 要注意一下,函数默认参数的作用域,如果按照以下的逻辑定义参数
>>> x = 30
>>> def m3(a,b=x):
...     print(a,b)
...
>>> m3(5)
5 30
>>> x=20
>>> m3(5)
5 30
>>>
  • 重新给x赋值,但是并不会影响到函数的默认值b

相关文章

  • python 定义带有默认参数的函数

    7.5 定义一个函数带有一个或多个参数是可选的并带有默认值 如果默认值是可变类型,如数组、元组等,那么可以把Non...

  • 函数相关

    函数定义 def 定义函数,函数返回值用return; python参数定义顺序必须是:必选参数、默认参数、可变参...

  • python基础-07-函数

    python基础-函数 1.函数的定义 例子: 2.python中函数的参数详解 必备参数demo: 默认参数de...

  • Python函数的参数(详细版)

    函数的参数有:必选参数、默认参数、可变参数、关键字参数。 在Python中定义函数,可以用必选参数、默认参数、可变...

  • python基础学习(二)

    函数 函数的定义 1.基本格式: 2.带有参数的格式: 3.带有默认值的参数的格式: 函数文档 查看函数文档的方法...

  • python学习之路-函数

    python中函数定义语法 def power(): 函数的参数 参数的默认 eg:def power(x,n=...

  • 7、函数

    7.1 默认参数 定义函数的时候,还可以有默认参数。例如Python自带的int()函数,其实就有两个参数,我们既...

  • python---函数参数

    python---函数参数 在Python中定义函数,可以用必选参数、默认参数、可变参数、关键字参数和命名关键字参...

  • Python中函数的参数

    Python函数的参数 Python函数的定义非常简单,且灵活度非常大。除了正常定义的必选参数外,还可以使用默认参...

  • [Code] Python简单小知识

    1. Python函数参数 1. 位置参数 调用时根据定义参数的顺序传参,如下例: 2. 默认参数 定义函数时写入...

网友评论

      本文标题:python 定义带有默认参数的函数

      本文链接:https://www.haomeiwen.com/subject/yicsprtx.html