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