python - Python:以pythonic方式将多个参数从函数传递给函数
问题描述
假设我有以下功能:
def func(a, b=0, c=1, d=2,...):
# Code goes here
我想在这样的另一个函数中使用它:
def do_sth(...):
func(...)
do_sth(...)
的参数数量func
很大。func
调用时我应该怎么做才能将(可选)参数传递给do_sth
,因为以下方法可用但不是pythonic:
def do_sth(a, b, c...):
func(a=a, b=b,c=c...)
do_sth(a, b, c...)
解决方案
传递这样的字典(在字典**
之前使用params
):
params = {
'a': 1,
'b': 2,
'c': 3,
'd': 4
}
func(**params)
要传递列表,请使用*
:
params = [1,2,3,4]
func(*params)
推荐阅读
- reactjs - 未获取 create-react-app 上传的图像
- java - Java Set Calculator:查找集合的补集
- java - 如何将用户输入字符串设置为 ENUM Java
- laravel - 为什么我没有收到广播消息 Laravel Pusher?
- matlab - 在matlab中使用\求解稀疏矩阵
- google-tag-manager - 关于添加 GTM 事件跟踪的最佳方法是什么的问题
- javascript - Webpack CommonsChunkPlugin 迁移,带有 2 个命名的公共块,50 多个条目
- python-3.x - 输入错误时如何使消息框显示?
- gradle - 无法解析配置“:url_launcher:lintClassPath”的所有文件
- javascript - 我怎样才能从这个购物车中删除一个项目?