如何在一行中写多个字符串?

如何在一行中写多个字符串?,第1张

如何在一行中写多个字符串

target.write(line1 n, line2 n, line3 n)

’ n’仅在字符串文字中有意义。没有引号,您就没有字符串文字。

target.write('line1 n, line2 n, line3 n')

好的,现在所有内容都是字符串文字。但是您希望line1,line2,line3不能是字符串文字。您需要将它们作为python表达式来引用有问题的变量。基本上,您必须在实际上是诸如“
n”之类的文本的字符串两边加上引号,而不能在变量两边加上引号。如果这样做,您可能会得到以下信息:

target.write(line1 'n' line2 'n' line3 'n')

什么

2 2
啊 没什么。您必须向python指定如何将这两部分结合起来。所以,你可以有
2 + 2
2 * 2
,但
22
没有任何意义。在这种情况下,我们使用加号组合两个字符串

target.write(line + 'n' + line2 + 'n' + line3 + 'n')

继续,

target.write(%r n, %r n, %r n) % (line1, line2, line3)

同样,

n
仅在字符串文字内部有意义。%运算符用于生成字符串时,将字符串作为其左侧。因此,您需要在字符串中包含所有这些格式详细信息。

target.write('%r n', '%r n', '%r n') % (line1, line2, line3)

但这会产生3个字符串文字,您只需要一个。如果执行此 *** 作,请写抱怨,因为它只包含一个字符串,而不是3。因此,您可能尝试过以下方法:

target.write('%r n%r n%r n') % (line1, line2, line3)

但是您想将line1,line2,line3写入文件。在这种情况下,您将尝试在写入完成后进行格式化。当python执行此 *** 作时,它将首先运行target.write:

None % (line1, line2, line3)

这将无济于事。要解决此问题,我们需要将

% ()
内部
.write()

target.write('%rn%rn%rn' % (line1, line2, line3))


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5646802.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存