64.关键字参数和默认值
先举个例子:

  def Hello_1(name,gets):print("{},{}".format(name,gets))>>> name='hello'>>> gets='world'>>> Hello_1(name,gets)hello,world-------------def Hello_2(gets,name):print("{},{}".format(gets,name))>>> gets='hello'>>> name='world'>>> Hello_2(gets,name)hello,world

可以看出这个两个函数的功能是相同的,只是参数的顺序是相反的;但是当参数很多的时候,这样就很难记住了,为了简化,可以指定名称。

 def Hello_1(name,gets):print("{},{}".format(name,gets))>>> Hello_1(gets='world',name='hello')hello,world>>> Hello_1(name='hello',gets='world')hello,world>>> Hello_1(name='world',gets='hello')world,hello
这样指定的名称的参数称为关键字,虽然输入量多了,但是参数的作用更加的清晰明了。
举个例子1:
   def Hello_3(name='hello',gets='world'):print("{},{}".format(name,gets))>>> Hello_3()hello,world>>> Hello_3(gets='tom')hello,tom>>> Hello_3(name='join',gets='tom')join,tom
举例子2:
  def Hello_4(first,name='hello',gets='world'):print("{},{},{}".format(first,name,gets))>>> Hello_4('one')one,hello,world>>> Hello_4('one','tom')one,tom,world>>> Hello_4('one','tom','join')one,tom,join>>> Hello_4('one',name='you')one,you,world>>> Hello_4()Traceback (most recent call last):File "<pyshell#27>", line 1, in <module>Hello_4()TypeError: Hello_4() missing 1 required positional argument: 'first'
结论:可以看出这样设置有很大的优点,但是如果参数没有指定的默认值,则会发生错误。

关于学习Python的一点学习总结(27->关键字参数和默认值)相关推荐

  1. python中怎么设置默认值_在Python中设置应该是列表的参数的默认值的最佳实践?...

    我有一个将列表作为参数的python函数.如果我将参数的默认值设置为如下空列表: def func(items=[]): print items 皮林特会告诉我"危险的默认值[]作为参数&q ...

  2. 关于学习Python的一点学习总结(58->匹配对象和编组)

    匹配对象和编组 1.模块re中,查找与模式匹配的子串的函数都在找到时返回MatchObject对象.这种对象包 含与模式匹配的子串的信息,还包含模式的哪部分与子串的哪部分匹配的信息.这些子串部分称 为 ...

  3. 关于学习Python的一点学习总结(57->正则表达式及re模块中的一些函数)

    关于这个正则表达式,我本人也是有点不完全懂,还在继续学习中. 97.re 1.正则表达式: 1.通配符:正则表达式可与多个字符串匹配,可使用特殊字符来创建这种正则表达式 例如:正则表达式'.ython ...

  4. 关于学习Python的一点学习总结(54->集合->堆->双端队列)

    集合,堆,双端队列 再谈集合set:集合是由内置类set实现的 >>> set(range(10)){0, 1, 2, 3, 4, 5, 6, 7, 8, 9} 可使用序列(或其他可 ...

  5. 关于学习Python的一点学习总结(56->random的使用)

    96.random:包含生成伪随机数的函数 random中一些重要的函数: 函数 描述random() 返回一个0~1(含)的随机实数getrandbits(n) 以长整数方式返回n个随机数的二进制位 ...

  6. 关于学习Python的一点学习总结(52->模块就是程序)

    91.模块就是程序 # hello.py print("Hello, world!") 将其保存在文件hello.py中,这个文件的名称(不包括扩展名.py)将成为模块的名称.这个 ...

  7. 关于学习Python的一点学习总结(47->静态方法和类方法)

    86.静态方法和类方法:静态方法和类方法是这样创建的:将它们分别包装在staticmethod和classmethod类的对象中.静态方法的定义中没有参数self,可直接通过类来调用.类方法的定义中包 ...

  8. 关于学习Python的一点学习总结(41->相关的BIF操作)

    81.一些相关的BIF 1.>>> class BIF:def __init__(self,t):self.t=thasattr(object,name):判断name是否在obje ...

  9. 关于学习Python的一点学习总结(38)

    78.文件: 1.文件的类型:包括ASCII,MIME,.txt等格式. 2.文件的格式类型:(1).MPEG视频:mp4;(2).图片格式:.jpg:(3)powerpoint文档:.ppt; (4 ...

最新文章

  1. 【特征工程】(未完成)特征选择
  2. CF809C Find a car
  3. If you are confused about the future
  4. 测验8.2 指针与字符串 6-1 函数实现字符串逆序
  5. SDNU 1477.矩形面积交(思维)
  6. P2685 [TJOI2012]桥
  7. mysql经典的8小时问题-wait_timeout
  8. leecode11 盛水最多的容器
  9. Javascript综合应用小案例
  10. Bootstrap 图片
  11. 如何运行PowerShell的脚本文件
  12. 每日一道算法题--leetcode 179--最大数--python
  13. 李宏毅机器学习——结构化支持向量机
  14. c语言里,关于宏定义的使用
  15. Flutter- Android项目集成flutter模块
  16. 网络SSID是什么意思
  17. 算法——Locker doors
  18. 论文解读-DeepMove: Predicting Human Mobility with Attentional Recurrent Networks
  19. 视频教程-用Java从零开始开发一个物联网项目-物联网技术
  20. 微信小程序开发抽取HTML中数据的最快方法是正则表达式,而不是循环

热门文章

  1. 知识蒸馏:如何用一个神经网络训练另一个神经网络
  2. 【小白学PyTorch】10.pytorch常见运算详解
  3. 使用条件卷积进行实例和全景分割
  4. Hadoop数据仓库工具——Hive
  5. vsftpd安装配置
  6. 2014年:这些词都快被玩坏了
  7. List循环添加对象时遇到问题的解决
  8. [React Router v4] Intercept Route Changes
  9. 用Python实现一个简单的线程池
  10. myeclipse下拷贝的项目,tomcat下部署名称和导出为war包的名称默认值修改