如何将unicode关键字传递给** kwargs

时间:2011-01-04 21:27:30

标签: python unicode kwargs

以下工作是例外。

def foo(**kwargs):
    print kwargs
foo(**{'a':'b'})
foo(**{u'a':'b'})
  
    

追踪(最近一次通话):       文件“”,第1行,in     TypeError:m()关键字必须是字符串

  

我做错了什么,或者我应该修理它?

2 个答案:

答案 0 :(得分:15)

升级到Python 2.6.5或更高版本。

答案 1 :(得分:5)

升级对我来说不是一个选项,所以我根据需要在dicts上调用它 -

def flatten_unicode_keys(d):
    for k in d:
        if isinstance(k, unicode):
            v = d[k]
            del d[k]
            d[str(k)] = v