我使用具有签名功能的库f(*args, **kwargs)
。
我需要在 kwargs 参数中传递 python dict,但 dict 不包含关键字中的字符串
f(**{1: 2, 3: 4})
Traceback (most recent call last):
File "<console>", line 1, in <module>
TypeError: f() keywords must be strings
如何在不编辑函数的情况下解决这个问题?
根本不允许使用非字符串关键字参数,因此这个问题没有通用的解决方案。您的具体示例可以通过转换您的密钥来修复dict
到字符串:
>>> kwargs = {1: 2, 3: 4}
>>> f(**{str(k): v for k, v in kwargs.items()})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)