如何在Python中不换行的输出?本篇文章就给大家介绍分别在Python2和Python3中实现不换行输出的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。
一般来说,刚刚从C / C ++切换到Python的人都想知道如何在不进入python的新行的情况下输出两个或多个变量或语句。由于python 的print()函数默认是以换行符结束的,所以在默认的情况下会自动换行。在Python有一个预定义的格式,如果你使用print(变量),那么它将自动转到下一行。【相关视频教程推荐:python教程】
举些例子:print("Hello World!")
print("My name is Karim")
将显示成这样:
但有时我们可能不想进入下一行,只想要在同一行上输出,同一行上一起显示。那我们能做什么呢?
例如这样输出显示:输入:print(“Hello World!”)print(“My name is Karim”)
输出:Hello World!My name is Karim输入:a = [1,2,3,4]
输出:1 2 3 4
这里我们将通过我们使用的不同python版本,来讨论解决方案,实现不换行的输出。
在Python 2.x中不换行的进行输出
在python 2中,避免或终止换行的最简单方法就是在print语句的末尾使用逗号,例:# 虽然没有新行,但换行符存在的空间将会被输出显示
print "Hello World!",
print "My name is Karim"
# 数组
a = [1, 2, 3, 4]
# 输出数组的元素
for i in range(4):
print(a[i]),
运行:
正如我们所看到的,虽然没有了换行符,但仍然会在两个输出语句之间有空格字符。
如果你真的需要有一点空间,那么这是最简单,最直接的方法。
但是如果你想在没有空格或换行符的情况下进行输出显示呢?
在这种情况下,你可以使用sys模块中功能强大的sys.stdout.write 函数。
此功能仅输出显示我们明确指示打印的内容。
没有终止字符串。
我们来举个例子吧import sys #声明使用sys模块
sys.stdout.write("Hello World!")
sys.stdout.write("My name is Karim")
运行:
在Python 3.x中不换行的进行输出
在Python 3中,提供了最简单的解决方案,您所要做的就是为print函数提供一个额外的参数。例:# 使用命名参数“end”指定行尾显式的字符串
print("Hello World!", end ="") #end里没有空格
print("My name is Karim")
# 数组
a = [1, 2, 3, 4]
# 输出数组的元素
for i in range(4):
print(a[i], end =" ") #end里添加空格
运行:
我们可以使用可选的命名参数end来明确提及应该在行尾添加的字符串。
无论您提供什么作为结束参数,都将是终止字符串。
因此,如果你提供空字符串,则不会有换行符,也不会在输入中附加空格。
总结:以上就是本篇文章的全部内容,给大家介绍了在在Python 2和Python 3中不换行输出的方法,希望能对大家的学习有所帮助。