我有一个充满数字字符串的字典,我想把这些值转换成二进制。我试过的是:

    for k,v in ValueDict.items():
        ValueDict.update(k:bin(v))

但是这不起作用。PyCharm说“变量注释的非法目标”,我不明白这意味着什么。据我所知,变量注释是对变量类型进行“注释”的一种方式,但我不明白这与我的问题有什么关系。。。
提前谢谢!

最佳答案

尝试使用字典理解:

print({k:bin(v) for k,v in ValueDict.items()})

或者如果版本低于2.5:
print(dict((k:bin(v) for k,v in ValueDict.items())))

您的代码无法在:中的ValueDict.update(k:bin(v))中工作
要使用您的风格:
for k,v in ValueDict.items():
    ValueDict.update({k:bin(v)})

或:
for k,v in ValueDict.items():
    ValueDict[k]=bin(v)

10-08 04:56