2014-12-26 154 views
0

基本上我想打印基於單獨變量的字典中的值。
例如:打印格式化字典鍵

d={"key1":5, "key2":5} 
x=2 
print("The value is {%d}".format(d["key{%d}".format(x)])) 

我想這個輸出「的值是5」,但它告訴我,%d不是關鍵的一部分。是否有任何方式使其打印我想要的內容?

回答

1

問題在於格式化字符串。您正在將舊式%格式字符串與新的str.format方法混合。使用正確的格式字符串,它會工作:

>>> print("The value is {}".format(d["key{}".format(x)])) 
The value is 5 

或舊式格式:

>>> print("The value is %d" % d["key%d" % x]) 
The value is 5