我可能有一个愚蠢的问题:

x = {'a':1,'b':2,'c':3}
print "%(a)s" % x   # works fine
print "%('a')s" % x  # failed

有人能告诉我为什么吗?

最佳答案

%(a)sa 检索现有 x 键的值。
%('a')s 尝试获取不存在的 'a' 键(带引号)的值,这导致错误出现。

简单的代码示例:

>>> x = {"'a'": 'a within quotes', 'a': 'no quotes'}
>>> "%('a')s" % x
'a within quotes'
>>> "%(a)s" % x
'no quotes'

关于python - 为什么在 Python 中使用基于字典的字符串格式时没有引号?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25019341/

10-12 19:48