在Python编程中不使用换行符进行打印
时间:2020-02-23 14:42:23 来源:igfitidea点击:
默认情况下,在不同的编程语言(例如C,C++,Java等)中,打印语句不以换行符结尾。
在使用Python的情况下,我们看到默认情况下," print()"函数在将内容打印后将光标移到下一行。
让我们看一个示例,其中我们尝试打印两个不同的语句。
print("Hello, this is Sneh.") print("I love Python")
输出:
Hello, this is Sneh. I love Python
在换行符中打印每个" print()"语句的内容时,这可能很有用。
但是有时用户可能需要在同一行中打印内容。
这可以通过使用以下针对Python 2.0+或者Python 3.0+用户的两种方法中的任何一种来实现。
在Python 3.0+中无需换行即可打印
在Python 3.0+中," print()"函数带有一个附加的可选参数" end",实际上它只是终止字符串。
以与上述相同的示例为例,但是这次使用'end'参数,让我们看看是否可以将两个语句都打印在一行中。
print("Hello, this is Sneh.", end="") print("I love Python")
输出:
Hello, this is Sneh.I love Python
因此,我们可以清楚地看到,只要将任何字符串作为" end"(作为参数)输入到打印函数中,我们实际上就可以将打印语句与它们分开。
用于不使用换行符打印列表
我们同样可以打印列表或者数组的内容而无需换行符。
让我们看看如何
list1=['God','is','Good'] for i in range(3): print(list1[i],end=" ")
输出:
God is Good
在Python 2.0+中无需换行即可打印
对于Python 2,我们可以通过两种方法中的任何一种来解决上述问题。
首先,如果我们希望将打印语句的内容用空格("")分开,则可以使用","运算符。
而对于其他分隔字符串,我们可以使用sys.stdout.write来自Python 2中Sys模块的函数。
同样,例如,使用","运算符,
print("Hello, this is Sneh again!"), print("I love C++ too.")
输出:
Hello, this is Sneh again! I love C++ too.
使用sys.stdout.write函数代替" print()",
import sys sys.stdout.write("Hello, this is Sneh!") sys.stdout.write("I love C++ too.")
输出:
Hello, this is Sneh again!I love C++ too.
用于不使用换行符打印列表
使用","运算符
再看一个例子,
list1=['Learn', 'Python', 'from', 'theitroad'] for i in range(4): print(list1[i]),
输出:
Learn Python from theitroad
使用sys模块功能
仔细看这个例子,
import sys list1=['Learn', 'Python', 'form', 'theitroad'] for i in range(4): sys.stdout.write(list1[i]) sys.stdout.write(",")
输出:
Learn,Python,from,theitroad