Python中的格式化程序

时间:2019-08-10 00:43:47

标签: python-2.7 formatter

我有这行代码:

  
    
      

formatter =“%r%r%r%r”

    
  

打印格式%(1、2、3、4) 打印格式%(“一个”,“两个”,“三个”,“四个”) 打印格式%(True,False,False,True) 打印格式化程序%(格式化程序,格式化程序,格式化程序,格式化程序) 打印格式%(     “我为你准备了这东西。”     “您可以正确输入。”,     “但是它没有唱歌。”,     “所以我说了晚安。” )<<<< / p>

,最后4行的输出是:

  
    
      

“我为你准备了这东西。” “那你可以正确输入。” “但是它没有唱歌。” “所以我说了晚安。” <<<< / p>     

  

我想理解为什么第三句用双引号显示而其他句子用单引号显示。

我尝试删除双引号,但没有得到预期的结果。


print formatter % (1, 2, 3, 4)
print formatter % ("one", "two", "three", "four")
print formatter % (True, False, False, True)
print formatter % (formatter, formatter, formatter, formatter)
print formatter % (
    "I had this thing for you.",
    "That you could type up right.",
    "But it didn't sing.",
    "So I said goodnight."

1 个答案:

答案 0 :(得分:0)

这是因为字符串中有撇号'。如果删除它,它将被打印为'But it didnt sing.' 区分字符串限制。如果使用''But it didn't sing.'

来打印,那会有些混乱。

PS。如果在字符串中同时添加'"符号,则事情会变得更加有趣。尝试一下。