打印时的 Python“ValueError:格式不完整”(“stuff %” % “thingy”)

新手上路,请多包涵

我使用此代码的目标是,当您输入某个数字时,您将根据输入的内容打印该数字和一些其他输出。出于某种原因,我这里给出的错误是“ValueError:格式不完整”。它与百分比有关。该错误是什么意思,我该如何解决?谢谢!

 variable = "Blah"
variable2 = "Blahblah"

text = raw_input("Type some stuff: ")

if "1" in text:
    print ("One %" % variable)
elif "2" in text:
    print ("Two %" % variable2)

原文由 Oughh 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 436
2 个回答

Python 期望另一个字符跟在字符串文字中的 % 之后,以告诉它如何在结果字符串中表示 variable

而是使用

"One %s" % (variable,)

或者

"One {}".format(variable)

创建一个新字符串,其中使用 variable 的字符串表示形式而不是占位符。

原文由 Chad S. 发布,翻译遵循 CC BY-SA 4.0 许可协议

>>> variable = "Blah"
>>> '%s %%' % variable
    'Blah %'
>>>

原文由 Ravi Gadhia 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题