考虑在 Python 中使用的这些示例:print
>>> for i in range(4): print('.')
.
.
.
.
>>> print('.', '.', '.', '.')
. . . .
在每个值之间添加换行符或空格。我怎样才能避免这种情况,以便输出是相反的?换句话说,如何将字符串“追加”到标准输出流?....
网友回答:
对于 Python 2 及更早版本,它应该像 Re:如何在没有 CR 的情况下打印?中描述的那样简单,作者 Guido van Rossum(转述):
是否可以打印某些内容,但不能自动附加回
车符?
是的,在要打印的最后一个参数之后附加一个逗号。例如,此循环在用空格分隔的行上打印数字 0..9。请注意添加最后一个换行符的无参数“print”:
>>> for i in range(10):
... print i,
... else:
... print
...
0 1 2 3 4 5 6 7 8 9
>>>
网友回答:
在 Python 3 中,你可以使用 and 函数的参数:sep=
end=
print
不要在字符串末尾添加换行符:
print('.', end='')
要在要打印的所有函数参数之间不添加空格,请执行以下操作:
print('a', 'b', 'c', sep='')
可以将任何字符串传递给任一参数,并且可以同时使用这两个参数。
如果您在缓冲时遇到问题,可以通过添加关键字参数来刷新输出:flush=True
print('.', end='', flush=True)
从 Python 2.6 中,您可以使用以下模块从 Python 3 导入函数:print
__future__
from __future__ import print_function
这允许您使用上面的 Python 3 解决方案。
但是,请注意,该关键字在从 Python 2 中导入的函数版本中不可用;它仅适用于Python 3,更具体地说是3.3及更高版本。在早期版本中,您仍然需要通过调用 来手动刷新。您还必须重写执行此导入的文件中的所有其他打印语句。flush
print
__future__
sys.stdout.flush()
或者您可以使用sys.stdout.write()
import sys
sys.stdout.write('.')
您可能还需要致电
sys.stdout.flush()
以确保立即冲洗。stdout
网友回答:
注意:这个问题的标题曾经是类似于“如何在Python中打印f”
由于人们可能会根据标题来这里寻找它,因此 Python 也支持 printf 样式的替换:
>>> strings = [ "one", "two", "three" ]
>>>
>>> for i in xrange(3):
... print "Item %d: %s" % (i, strings[i])
...
Item 0: one
Item 1: two
Item 2: three
而且,您可以方便地将字符串值相乘:
>>> print "." * 10
..........
模板简介:该模板名称为【如何在没有换行符或空格的情况下打印】,大小是暂无信息,文档格式为.编程语言,推荐使用Sublime/Dreamweaver/HBuilder打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【Python】栏目查找您需要的精美模板。