将可变数量的参数传递给函数中的函数

时间:2018-08-09 14:54:02

标签: python-3.x function arguments

我想使用** kwargs将变量参数传递给函数内部的函数。它打印出来好像它们正在传递,但是当我检查文件写入参数时,它们根本没有通过。

from radmc3dPy import *
analyze.writeDefaultParfile('ppdisk')

def problemparams(**kwargs):
      if kwargs is not None:
           for key, value in kwargs.items():
                setup.problemSetupDust('ppdisk', "%s = %s" %(key, value))

函数“ setup.problemSetupDust()”应将密钥及其值作为参数集传递给.inp文件。但是,当我检查文件时,此方法尚未更改值。

1 个答案:

答案 0 :(得分:0)

setup.problemSetupDust call希望所有参数都作为关键字参数传递。转发这些信息的正确方法就是

def problemparams(**kwargs):
    setup.problemSetupDust('ppdisk', **kwargs)