1.普通的参数传递

>>> def add(a,b):

return a+b

>>> print add(1,2)

3

>>> print add('abc','123')

abc123

2.参数个数可选,参数有默认值的传递

>>> def myjoin(string,sep='_'):

return sep.join(string)

>>> myjoin('Test')

'T_e_s_t'

>>> myjoin('Test',';')

'T;e;s;t'

>>> def myrange(start=0,stop,step=1):

print stop,start,step

SyntaxError: non-default argument follows default argument

参数sep的缺省值是'_' 如果这个参数不给定值就会使用缺省值 如果给定 则使用给定的值

需要注意 如果一个参数是可选参数 那么它后面所有的参数都应该是可选的,另外 可选参数的顺序颠倒依然可以正确的给对应的参数赋值 但必须清楚的指明变量名和值

3.个数可变参数

>>> def printf(fmt,*arg):

print fmt%arg

>>> printf ('%d is larger than %d',2,1)

2 is larger than 1

函数中的*arg必须是最后一个参数,*表示任意多个参数,*arg会把除了前面以外所有的参数放到一个tuple里面传递给函数,可以在函数中通过arg来访问

arg是一个tuple,可以通过访问tuple的方法在函数中访问arg

另一种方式传递任意个数参数是通过dictionary的方式来传递 同样也可以接受多个参数 但是每个参数需要指明名称对应关系比如a=1,b=2,c=3

>>> def printf(format,**keyword):

for k in keyword.keys():

print "keyword[%s] %s %s"%(k,format,keyword[k])

>>> printf('is',one=1,tow=2,three=3)

keyword[three] is 3

keyword[tow] is 2

keyword[one] is 1

这些方法可以混在一起用 但是一定要注意顺序,函数会先接受固定参数,然后可选参数,然后任意参数(tuple),然后字典任意参数(dict)

python函数可选参数传递_Python中函数的参数传递相关推荐

  1. python可变参数函数二阶导数公式_Python中函数的参数定义和可变参数

    刚学用Python的时候,特别是看一些库的源码时,经常会看到func(*args, **kwargs)这样的函数定义,这个*和**让人有点费解.其实只要把函数参数定义搞清楚了,就不难理解了. 先说说函 ...

  2. python中的方法和函数的区别_python中函数与方法的区别?

    Python中函数不是方法,主要有以下区别: 首先,从分类的角度来分析二者的区别 (1)函数的分类: 内置函数:python内嵌的一些函数. 匿名函数:一行代码实现一个函数功能. 递归函数:自己调用自 ...

  3. python函数返回值_Python中函数的返回值示例浅析

    前言: 前面我们介绍了简单的介绍了函数和函数的参数,今天我们来说一下Python中函数的返回值. 函数的返回值:函数运算的结果,需要进一步的操作时,给一个返回值return用来返回函数的结果,如果没有 ...

  4. python可变参数函数二阶导数公式_python中函数的可变参数

    简介 INTRODUCTION一.[其实已经用过]可变参数 二.可变参数+普通参数 结合用法1 三.知识要点总结强调 知识回顾: 1.函数关键字参数 2.函数的参数的默认值.必须从右边写到左边. 一. ...

  5. python函数**什么意思_python中函数的参数是什么意思

    本文主要讲解python中函数的参数及参数的类型 默认参数def enroll(name, gender, age=6, city='Beijing'): print('name:', name) p ...

  6. python中的方法和函数的区别_Python中函数和方法的区别

    在Python中函数和方法是有区别的. 区别一所处的位置:函数是直接写文件中而不是class中,方法是只能写在class中. 区别二定义的方式: 1.函数定义的方式 def关键字  然后接函数名 再是 ...

  7. python内置函数调用_Python中函数的基本定义与调用及内置函数详解

    前言 函数function是python编程核心内容之一,也是比较重要的一块.首先我们要了解Python函数的基本定义: 函数是什么? 函数是可以实现一些特定功能的小方法或是小程序.在Python中有 ...

  8. python 内部函数传参_python中函数传参详解

    一.参数传入规则 可变参数允许传入0个或任意个参数,在函数调用时自动组装成一个tuple: 关键字参数允许传入0个或任意个参数,在函数调用时自动组装成一个dict: 1. 传入可变参数: def ca ...

  9. python函数默认参数_Python中函数的默认参数问题

    前几天,运营反馈了一个BUG,某些数据在写入数据库后,其时间字段出现异常,与当前时间相差较多. 由于代码是不是我写的,所以开始一遍阅读代码一遍排查问题. 在主流程中,仅仅发现了一个对时间赋值的语句,并 ...

最新文章

  1. linux 如何切换jdk的版本
  2. [Medical Image Process] 3.4 Morphology Application—Watershed Algorithm 分水岭算法
  3. 用第三方工具类,将JavaBean、List、MapString,Object转成JSON文本
  4. YOUR GUIDE TO Lowering YourCholesterol With TLC学习笔记(暂时没有完成)
  5. Linux网络/firewalld和netfilter/netfilter/iptables语法
  6. 数据科学中的数据可视化
  7. 修改ubuntu默认的Python版本号
  8. SAP License:ReportPainter报表显示JPY等无小数位货币时少两位
  9. 洛谷 P1168 中位数 堆
  10. POJ 1949 [最小优先队列]
  11. [教程]VNR添加游戏以及H特殊码的使用
  12. 谷歌关键字推广操作技巧
  13. html涂鸦画板插件,sketchpad-简单的HTML5 Canvas涂鸦画板插件 -HTML5功能
  14. 【转】凡事事必躬亲 是一种恶习
  15. tableView的懒懒的跳转方式,加载数据源方式
  16. 盛迈坤电商:退款率高会影响店铺吗
  17. 复印机的工作过程大致如下
  18. 如何使用FTP手机/电脑上传文件到服务器
  19. linux下防火墙iptables用法规则详解
  20. 服务器hostname命名规范汇总

热门文章

  1. log nginx 客户端请求大小_后端实践:Nginx日志配置(超详细)
  2. Lispbox的简单配置
  3. Django restfulframework 开发相关知识 整理
  4. 理解LSTM/RNN中的Attention机制
  5. eclipse.ini内存设置(转)
  6. [SDOI2017]新生舞会
  7. 推荐2一个在Java编码过程中得心应手的工具
  8. asp.net MVC 的处理流程
  9. webpack配置alias别名设置
  10. npm切换到淘宝镜像