Python print()
函数输出的信息在一行。
print()
函数是 Python 中的一个重要函数,因为它用于将 Python 输出重定向到终端或者重定向到文件。
默认情况下, print()
函数每次都在新行上打印,这是由于 Python 文档中 print()
定义决定的。
print
函数默认在新行上打印? 在下面的代码片段中,我们可以看到默认情况下 end
的值是 \n
,这意味着每个 print 语句将以 \n
结尾,而 \n
表示一个换行字符。
让我们看一个 print
函数的例子:
# using Print with default settings
print("This will be printed")
print("in separate lines")
输出:
在上面的示例中,由于 end ="\n"
,所以行将被单独打印。
有时,我们需要在一行上打印字符串,这在我们用 Python 读取文件时特别有用,当我们读取文件时,默认情况下在行之间会得到一个空白行。
让我们看一个例子,有一个名为 rainbow.txt
的文件,其内容如下:
代码:
fhand = open('rainbow.txt')
for line in fhand:
print(line)
在上面的代码中,我们使用了一个文件处理程序 fhand
来访问文件,接下来,我们使用 for 循环遍历这些行。
当我们打印内容时,结果如下:
额外的空行是由于文件中每一行末尾都有 \n
,而 n\
将光标移动到下一行,由于 print
函数也会默认会输出空白行,所以读取文件输出之后多出了一个空行。
假设我们想移除这些,要做到这一点,我们可以做一些改变。为此,我们需要更改 print
的默认行为,我们将在接下来的章节中详细讨论如何做到这一点。
让我们在 print
函数中设置 end 的值,我们将它设置为空格,即 ''
,代码示例:
# Customizing the value of 'end'
print("This is string 1 same line", end=' ')
print("This is string 2 different line")
输出:
现在我们可以看到, print
函数在末尾添加一个空白字符 ''
,而不是一个新行( \n
)。
我们还可以提供另一个字符,而不是空格:
# Customizing the value of 'end' with a custom separator
print("This is string 1 same line", end=';')
print("This is string 2 different line")
输出:
用法: 上面的示例只是用你设置的分隔字符在同一行上打印的一种方法。
让我们看看另一个例子,可以遍历一个列表,并用 end =''
在同一行上打印它们。
# iterating lists
list_fruits = ['red','blue', 'green', 'orange']
for i in list_fruits:
print(i, end = ' ')
输出:
我们可以使用 strip()
删除字符串前后的某些字符,默认情况下,文件中的每一行末尾都有 \n
,由于我们只关心右边的字符,所以我们可使用 rstrip ()
,它代表右边的字符,接下来我们将讨论 rstrip ()
的一个示例。
你可以在 中了解更多关于 strip ()
方法的信息。
记住,我们讨论过一个文件打印示例,其中有多余的行被打印:
让我们使用 rstrip ()
稍微修改一下代码。
print("1. Removing extra blank line")
fhand = open('rainbow.txt')
for line in fhand:
line=line.rstrip()
print(line)
print("\n")
print("2. Printing all in the same line")
fhand = open('rainbow.txt')
for line in fhand:
line=line.rstrip("\n")
print(line, end = ' ')
首先,我们用 rstrip ()
删除了额外的空格,在下一步中,我们用 rstrip('\n')
和 end =''
再次删除额外的行,以便在一行中得到输出。