首页 > 解决方案 > 在一行上多次打印字符串的pythonic方法是什么,用空格分隔?

问题描述

我想在以空格分隔的行上多次打印一个字符串。

我尝试了几个版本的字符串乘法,比如string * 3. 我也尝试过" ".join(),但我在每个字符而不是每个字符串之间都有空格。我认为 join 需要一个列表而不是字符串。

这是我的代码的详细版本: fout.write(info[2]+" "+info[2]+" "+info[2]+'\n')

还有另一个版本,我在每个字符串之前插入字母 x: fout.write("x"+info[2]+" x"+info[2]+" x"+info[2]+'\n')

我的代码有效,但似乎有一种更 Pythonic 的方式,比如我打印整个列表的版本,称为 info 而不仅仅是 info[2] 重复: fout.write(" ".join(x)+'\n')其中 x 是列表。

标签: python

解决方案


字符串乘法是正确的想法。

print(((string+' ') * 3).rstrip())

rstrip()仅删除尾随空格

如果您的字符串包含尾随空格,rstrip()则将错误地删除它。在这种情况下,请改用切片:

print(((string+' ') * 3)[:-1])

推荐阅读