2024-10-02 08:27:58 发布
网友
如何使用字符串格式从字典中调用信息?你知道吗
以下是我迄今为止所做的尝试(可能相当糟糕……)
value = raw_input("Indicate a number: ") print number_stats["chm%"] % (value,)
字典编号\u stats保存有关值“chm1”、“chm2”等的信息
我得到一个键错误,这使我困惑,因为chm1项肯定存储在我的字典中。你知道吗
有没有更好的办法?你知道吗
像这样使用。必须在方括号内使用字符串格式
>>> number_stats={'a1': 1} >>> >>> print number_stats['a%s' % 1] 1 >>>
print number_stats["chm%s" % (value)]
应该有用。你知道吗
但你应该这样做:
print number_stats.get("chm%s" % (value), "some_default_value")
以避免在用户输入无效密钥时崩溃。有关get方法的更多信息,请参见this。你知道吗
get
当您执行number_stats["chm%"] % (value,)时,您首先执行number_stats["chm%"],然后对结果应用% (value,)。您希望将%直接应用于字符串:
number_stats["chm%"] % (value,)
number_stats["chm%"]
% (value,)
%
number_stats["chm%s" % (value,)]
请注意,您需要%s;%本身不是有效的字符串替换。你知道吗
%s
不过,可能还有更好的方法。为什么你的字典有"chm1"和"chm2"这样的键,而不仅仅是数字本身(即有键1和键2)?然后你就可以做number_stats[value]。(或者如果你从raw_input读value,你需要number_stats[int(value)]
"chm1"
"chm2"
number_stats[value]
raw_input
value
number_stats[int(value)]
像这样使用。必须在方括号内使用字符串格式
应该有用。你知道吗
但你应该这样做:
以避免在用户输入无效密钥时崩溃。有关
get
方法的更多信息,请参见this。你知道吗当您执行
number_stats["chm%"] % (value,)
时,您首先执行number_stats["chm%"]
,然后对结果应用% (value,)
。您希望将%
直接应用于字符串:请注意,您需要
%s
;%
本身不是有效的字符串替换。你知道吗不过,可能还有更好的方法。为什么你的字典有
"chm1"
和"chm2"
这样的键,而不仅仅是数字本身(即有键1和键2)?然后你就可以做number_stats[value]
。(或者如果你从raw_input
读value
,你需要number_stats[int(value)]
相关问题 更多 >
编程相关推荐