Python:使用格式字符串时打印多行

时间:2017-05-09 07:34:22

标签: python printing string-formatting

当我尝试在python中打印带格式字符串的多行时,bash会显示错误:

a = 'tony'
b = '20'
print ("I am %s\n"+
       "I am %s years old\n"
       % (a,b))

TypeError:并非在字符串格式化期间转换所有参数

我想知道这有什么问题,以及使用格式字符串打印多行的正确方法。

如果我写这样的代码,它会正确输出。但是,单行代码太长了,这不是我想要的。

print ("I am %s\nI am %s years old\n" % (a,b))

1 个答案:

答案 0 :(得分:3)

您需要line continuation,使用\

试试这个:

a = 'tony'
b = '20'
print("I am %s\n" \
      "I am %s years old\n" \
       % (a,b))

I am tony
I am 20 years old

或者您可以删除+

print("I am %s\n"
      "I am %s years old\n"
       % (a,b))

I am tony
I am 20 years old