【发布时间】:2011-06-03 16:08:08
【问题描述】:
我是以下工作的例外。
def foo(**kwargs):
print kwargs
foo(**{'a':'b'})
foo(**{u'a':'b'})
Traceback(最近一次调用最后一次): 文件“”,第 1 行,在 TypeError: m() 关键字必须是字符串
我做错了什么还是我应该修复它?
【问题讨论】:
-
foo() argument after ** must be a mapping, not set。我想你的意思是'a':'b'。你的平台是什么? python-2.7-8.fc14.1.x86_64 可以正常使用该修复程序。 -
这对我来说在 Python 2.7.1 中运行得非常愉快
-
我修复了问题中的错误。但问题依然存在,我运行的是 2.6,但它崩溃了。
-
您正在运行 2.6.1(修订版 67515),问题 2646 在修订版 68805 中已修复。所以,再次:将您的 python 2.6 更新到最新版本(截至今天为 2.6.6)。
标签: python unicode keyword-argument