定义函数的时候,还可以有默认参数。

例如Python自带的 int() 函数,其实就有两个参数,我们既可以传一个参数,又可以传两个参数:

>>> int('123')

123

>>> int('123', 8)

83

int()函数的第二个参数是转换进制,如果不传,默认是十进制 (base=10),如果传了,就用传入的参数。

可见,函数的默认参数的作用是简化调用,你只需要把必须的参数传进去。但是在需要的时候,又可以传入额外的参数来覆盖默认参数值。

我们来定义一个计算 x 的N次方的函数:

def power(x, n):

s = 1

while n > 0:

n = n - 1

s = s * x

return s

假设计算平方的次数最多,我们就可以把 n 的默认值设定为 2:

def power(x, n=2):

s = 1

while n > 0:

n = n - 1

s = s * x

return s

这样一来,计算平方就不需要传入两个参数了:

>>> power(5)

25

由于函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必需参数的后面:

# OK:

def fn1(a, b=1, c=2):

pass

# Error:

def fn2(a=1, b):

pass

任务

请定义一个 greet() 函数,它包含一个默认参数,如果没有传入,打印 'Hello, world.',如果传入,打印 'Hello, xxx.'

python之定义默认参数_035-Python之定义默认参数相关推荐

  1. python之有关关键字参数,默认参数,不定长参数,位置参数的定义,区别,以及使用方法。

    传递任意数量的实参: 当我们无法确定函数需要接受多少个实参时,我们可以通过在形参名前加,让python创建一个名为该形参名的空元组,在函数调用时,就可以将收到的所有值放入该元组.* 举例: def m ...

  2. python系统提供构造函数传入参数_[ Python入门教程 ] Python函数定义和使用

    函数是一段可以重复多次调用的代码,通过输入的参数值,返回需要的结果.通过使用函数,可以提高代码的重复利用率.本文主要介绍Python函数的定义.调用和函数参数设置方法. 函数的定义 Python函数定 ...

  3. Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数

    Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数 内容大纲 1.函数的初识 2.函数的定义 3.函数的调用 4.函数的返回值 5.函数的参数 1.函数初识 # def ...

  4. python默认参数举例_Python中的默认参数实例分析

    本文研究的主要是Python中的默认参数的相关内容,具体如下. 熟悉C++语言的可以知道,C++语言中的默认参数是写在函数声明中的,为语法糖,与函数的调用无关,是在函数调用的时候由编译器补齐参数然后进 ...

  5. python函数定义中参数列表里的参数是_python函数定义中的参数说明

    原博文 2020-05-23 07:50 − > 描述函数定义时 涉及到的 位置参数,默认参数,关键字参数,可变参数等的概念及用法 ## 1 示例代码 ``` #! /usr/bin/env p ...

  6. python可变参数和关键字参数位置_python笔记——函数的参数(位置参数、默认参数、可变参数、关键字参数、命名关键字参数、参数组合)...

    定义函数的时候,我们把参数的名字和位置确定下来,函数的接口定义就完成了.对于函数的调用者来说,只需要知道如何传递正确的参数,以及函数将返回什么样的值就够了,函数内部的复杂逻辑被封装起来,调用者无需了解 ...

  7. python函数定义与参数_Python函数的定义方式与函数参数问题实例分析

    本文实例讲述了Python函数的定义方式与函数参数问题.分享给大家供大家参考,具体如下: 涉及内容: 函数的定义方式 函数的文字描述 空操作语句 位置参数 默认参数 关键参数 可变长度参数 函数的定义 ...

  8. python关键字参数必须位于位置参数之前_python函数中的参数(关键字参数,默认参数,位置参数,不定长参数)...

    默认参数:定义函数的时候给定变量一个默认值. def num(age=1): 位置参数:调用函数的时候根据定义函数时的形参位置和实参位置进行引用. 关键字参数:如果定义的函数中含有关键字参数,调用函数 ...

  9. python非可选参数_带plac的可选参数的默认值和非默认值 - python

    我的目标是使用plac在命令行中运行脚本,所有参数均为可选,并具有默认值. 不带参数:python my_script.py.它运行完美. 带有参数:python my_script.py -r &q ...

  10. Python starred expression 星号*(乘法或不确定的参数的定义与输入)与**(指数运算或不确定的字典类参数的定义与输入)用法分析

    https://blog.csdn.net/u010376788/article/details/49933511 https://blog.csdn.net/DawnRanger/article/d ...

最新文章

  1. Python3中装饰器@typing.overload的使用
  2. 三十三、分治算法---汉诺塔问题
  3. 浅谈loadrunner中pacing设置
  4. Linux MySQl 5.7.17 MySQL ERROR 1366(HY000):Incorrect string value 解决方法
  5. 算法--------俄罗斯套娃信封问题(Java版本)
  6. Mysql数据类型之整数型的一些细节你get到了吗?
  7. 从绘画和雕塑中了解板甲的设计思路
  8. python与access选哪个_从Python连接到Access
  9. Proj.4库的编译及使用
  10. 我的盖洛普“优势识别器”测试证书
  11. 常见系统中文字体的英文名
  12. 如何用elastic APM实现用户行为轨迹监控(User Journey Monitoring)
  13. Docker启动报错“Job for docker.service failed because a configured resource limit was exceeded.
  14. IDEA安装后无法启动
  15. Flink stream load 方式写入doris
  16. 在html页面上引用脚本文件,如何在html中调用JS文件
  17. 实习日志(总结一些前端知识)
  18. python生成排列组合_Python 排列组合生成
  19. Java面向对象——最近学习总结
  20. 计算机系统不认,重做系统电脑不认u盘怎么办

热门文章

  1. spring AOP(二) 相关类或接口
  2. 客户端无刷新调用服务器程序
  3. Java 零注解文档生成工具—smart-doc,看完有替换swagger的冲动
  4. pandas读取csv文件数据并对指定字段分类使用matplotlib在一张图里画四张折线图子图
  5. 自动超频_超频的几种方式
  6. ES6学习笔记八(数值的扩展)
  7. abp框架使用ip访问
  8. Go 关键字 Select
  9. (2)、PHP Win10 本地配置RabbitMq
  10. 虚拟服务器怎么安装网站,虚拟主机如何安装网站个人博客(WordPress)