将列表传递给函数作为多个参数[重复]
- 2024-11-29 08:42:00
- admin 原创
- 103
问题描述:
在一个需要项目列表的函数中,如何传递 Python 列表项而不出现错误?
my_list = ['red', 'blue', 'orange']
function_that_needs_strings('red', 'blue', 'orange') # works!
function_that_needs_strings(my_list) # breaks!
肯定有办法扩展列表,并'red','blue','orange'
即时传递函数吧?我认为这就叫做“解包”。
解决方案 1:
function_that_needs_strings(*my_list) # works!
你可以在这里阅读所有相关内容:解包参数列表 - Python 教程
解决方案 2:
是的,您可以使用*args
(splat)语法:
function_that_needs_strings(*my_list)
wheremy_list
可以是任何可迭代对象;Python 将循环给定的对象并将每个元素作为函数的单独参数。
参见调用表达式文档。
还有一个等效的关键字参数,使用两个星号:
kwargs = {'foo': 'bar', 'spam': 'ham'}
f(**kwargs)
并且在函数签名中指定捕获所有参数的等效语法:
def func(*args, **kw):
# args now holds positional arguments, kw keyword arguments
解决方案 3:
从 Python 3.5 开始,您可以解压无限数量的list
s。
PEP 448 - 附加解包概括
因此这将起作用:
a = ['1', '2', '3', '4']
b = ['5', '6']
function_that_needs_strings(*a, *b)
相关推荐
热门文章
项目管理软件有哪些?
- 2024年20款好用的项目管理软件推荐,项目管理提效的20个工具和技巧
- 2024年开源项目管理软件有哪些?推荐5款好用的项目管理工具
- 2024年常用的项目管理软件有哪些?推荐这10款国内外好用的项目管理工具
- 项目管理软件有哪些?推荐7款超好用的项目管理工具
- 项目管理软件有哪些最好用?推荐6款好用的项目管理工具
- 项目管理软件哪个最好用?盘点推荐5款好用的项目管理工具
- 项目管理软件有哪些,盘点推荐国内外超好用的7款项目管理工具
- 项目管理软件排行榜:2024年项目经理必备5款开源项目管理软件汇总
- 项目管理必备:盘点2024年13款好用的项目管理软件
- 2024项目管理软件排行榜(10类常用的项目管理工具全推荐)
热门标签
云禅道AD