本文主要介绍在 Python2 与 Python3 下 print 实现不换行的效果。
Python 3.x
在 Python 3.x 中,我们可以在 print() 函数中添加 end="" 参数,这样就可以实现不换行效果。
在 Python3 中, print 函数的参数 end
默认值为 "\n",即end="\n",表示换行,给 end
赋值为空, 即end="",就不会换行了,例如:
Python3.x 实例
print('这是字符串,', end="")
print('这里的字符串不会另起一行')
执行以上代码,输出结果为:
这是字符串,这里的字符串不会另起一行
end="" 可以设置一些特色符号或字符串:
print('12345', end=" ") # 设置空格
print('6789')
print('admin', end="@") # 设置符号
print('runoob.com')
print('Google ', end="Runoob ") # 设置字符串
print('Taobao')
执行以上代码,输出结果为:
12345 6789 admin@runoob.com Google Runoob Taobao
Python 2.x
在 Python 2.x中, 可以使用逗号 , 来实现不换行效果:
Python2.x 实例
#!/usr/bin/python
# -*- coding: UTF-8 -*-
print "这是字符串,", # 末尾添加逗号
print "这里的字符串不会另起一行"
# print 带括号
print ("这是字符串,"), # 末尾添加逗号
print ("这里的字符串不会另起一行")
执行以上代码,输出结果为:
这是字符串, 这里的字符串不会另起一行 这是字符串, 这里的字符串不会另起一行
如果有变量,我们可以在逗号 , 后面直接添加变量:
Python2.x 实例
#!/usr/bin/python
# -*- coding: UTF-8 -*-
x= 2
print "数字为:", x
执行以上代码,输出结果为:
字为: 2
注意:这种输出方法,在 , 末尾会有一个空格输出,类似于使用了 Python 3 的 end=" "。
Python2.x 与 Python3.x 兼容模式
如果 Python2.x 版本想使用 Python3.x 的 print 函数,可以导入 __future__ 包,该包禁用 Python2.x 的 print 语句,采用 Python3.x 的 print 函数。
以下代码在 Python2.x 与 Python3.x 都能正确执行:
Python2.x 实例
#!/usr/bin/python
# -*- coding: UTF-8 -*-
from __future__ import print_function
print('12345', end=" ") # 设置空格
print('6789')
print('admin', end="@") # 设置符号
print('runoob.com')
print('Google ', end="Runoob ") # 设置字符串
print('Taobao')
注:Python3.x 与 Python2.x 的许多兼容性设计的功能可以通过 __future__ 这个包来导入。