can you pass variadic arguments after named parameters?

Python 3.4.3:答案是肯定的.

如果要调用仅命名固定参数的函数,请将可变参数放在函数定义中

def function(*args, bob, sally):

print(args, bob, sally)

values = [1, 2, 3, 4]

function(bob="Hi bob", sally="Hello sally", *values)

function(*values, bob="Hi bob", sally="Hello sally")

function(bob="Hi bob", *values, sally="Hello sally")

产生

(1, 2, 3, 4) Hi bob Hello sally

(1, 2, 3, 4) Hi bob Hello sally

(1, 2, 3, 4) Hi bob Hello sally

如您所见,您可以调用函数以您喜欢的任何顺序放置参数.

由于您明确地引用了实例方法,因此如果函数是一种方法(比如A类),则值得检查会发生什么

class A():

def function(self, *args, bob, sally):

print(args, bob, sally)

values = [1, 2, 3, 4]

a=A()

a.function(bob="Hi bob", sally="Hello sally", *values)

a.function(*values, bob="Hi bob", sally="Hello sally")

a.function(bob="Hi bob", *values, sally="Hello sally")

仍在工作和生产

(1, 2, 3, 4) Hi bob Hello sally

(1, 2, 3, 4) Hi bob Hello sally

(1, 2, 3, 4) Hi bob Hello sally

Python 2.7.6:答案是否定的.

>>> def function(*args, bob, sally):

File "", line 1

def function(*args, bob, sally):

^

SyntaxError: invalid syntax

另一种方法可以是为可变参数赋予名称

values = {'p1': 1, 'p2': 2, 'p3': 3, 'p4': 4}

然后你可以定义

def function(bob, sally, **kwargs):

print(kwargs['p1'])

并称之为

function(bob="Hi bob", sally="Hello sally", **values)

python中可变参数怎么传递的呢_在python中,你可以在命名参数后传递可变参数吗?...相关推荐

  1. python中形参只在函数内部有效_【Python】函数

    Python函数 >>>转到思维导图>>>转到博客园 函数的返回值 函数内要想返回给调用者值 必须用关键字return 不写return:函数默认返回None de ...

  2. python变量存储 堆与栈内存内存_浅析JS中的堆内存与栈内存

    最近跟着组里的大佬面试碰到这么一个问题, Q:说说var.let.const的区别 A:balabalabalabla... Q:const定义的值能改么? A:你逗我?不能吧 不知道各位看官怎么想? ...

  3. python中比较重要的几个函数_【python】python re模块中几个比较重要的函数

    转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=22920230&id=3389387 re.match re.m ...

  4. 下列选项中不属于python循环语句的是哪一项_下列选项中,不属于字典操作的方法是哪一项?_学小易找答案...

    [简答题]字符串有哪几种表现形式? [简答题]简述Python程序的执行过程. [单选题]Python 语句x='char';y=2,print(x+y)输出的结果是哪一项?() [编程题]输入三角形 ...

  5. python中以下关于列表描述错误的_在Python中,以下关于函数的描述错误的是哪一项?...

    [判断题]Python内置函数len____可以返回列表.元组.字典.集合.字符串以及range对象中元素个数. [判断题]Python内置函数max____用来返回序列中的最大元素. [判断题]Py ...

  6. python中的换行符是哪个键_对Python字符串中的换行符和制表符介绍

    对Python字符串中的换行符和制表符介绍 有关换行的问题 首先提一个问题,如下. python程序代码如下: print("I'm Bob. What's your name?" ...

  7. python中的pop函数和append函数_对python中的pop函数和append函数详解

    pop()函数 1.描述 pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值. 语法 pop()方法语法: list.pop(obj=list[-1]) 2.参数 obj ...

  8. python定义方法self会被当作变量_为什么Python必须在方法定义和调用中显式使用“self”?...

    为什么Python必须在方法定义和调用中显示使用"self"? 这个想法借鉴了 Modula-3 语言.出于多种原因它被证明是非常有用的. 首先,更明显的显示出,使用的是方法或实例 ...

  9. python中怎么统计英文字符的个数_【Python练习1】统计一串字符中英文字母、空格、数字和其他字符的个数...

    练习思路: 1.输入一串字符 2.筛选出字符中的英文字母并统计 3.筛选出字符中的空格并统计 4.筛选出字符中的数字并统计 5.筛选出字符中的其他字符并统计 代码实现: def msg(s): abc ...

  10. python文件的打开模式有几种_以下选项中,不是Python打开文件模式的是( )_学小易找答案...

    [单选题]下面代码的输出结果是( ) x=12.34+0j print(type(x)) [单选题]在本实验中为什么不使用草酸钠,而使用草酸来制备草酸亚铁? [单选题]减压抽滤时,下述操作不正确的是 ...

最新文章

  1. js json编辑器_程序员必备编辑器 —— Visual Studio Code
  2. Sentinel Go 0.4.0 发布,支持热点流量防护能力
  3. JPA基础(八):分析JPA与持久化实现产品对接的源代码
  4. python实现语义分割_如何用PyTorch进行语义分割?一文搞定
  5. 操作系统的概念,功能和目标
  6. 笔记_深度学习相关_PyTorch
  7. matlab半波整流怎么做,基于Matlab的单相半波可控整流电路的设计与仿真.doc
  8. Android studio 使用阿里巴巴图标矢量图库
  9. 【WiFi】WiFi 5G信道和频宽的对应关系
  10. POST http://localhost:8080/admin/getPageDiseaseList net::ERR_INCOMPLETE_CHUNKED_
  11. js如何区分单击与双击(如何避免双击的时候触发单击事件)
  12. 逃离北上广:你以为回到小城市就很幸福了吗?
  13. qnx slm7.1(程序员开发手册-翻译)
  14. 爬虫——Scrapy框架案例一:手机APP抓包
  15. 计算机三级mysql好考吗_计算机三级哪个最好考?计算机三级网络和数据库哪个好考?...
  16. 全面提高影像科图像质量(二)——CT板块
  17. 怎么建立网站才能使网站更有价值?
  18. 程序员惨遭996,注册Github域名炮轰996工作模式
  19. 彩虹易支付新增短信宝短信接口
  20. Python3 源码安装

热门文章

  1. Java命令行界面(第24部分):MarkUtils-CLI
  2. ssh 看apache_使用Apache KeyedObjectPool的ssh连接池
  3. 了解JUnit的Runner架构
  4. 在CloudBees上开发,测试和部署独立应用程序
  5. MineCraft和堆外内存
  6. 在Google的AppEngine上升级到Java 7
  7. 如何用Java编写最快的表达式评估器之一
  8. 重复运行JUnit测试而没有循环
  9. 您可能不知道的五个高级Java同步器
  10. Web开发框架–第1部分:选项和标准