📜  Python|使用 print()函数输出

📅  最后修改于: 2022-05-13 01:55:45.972000             🧑  作者: Mango

Python|使用 print()函数输出

Python print()函数将消息打印到屏幕或任何其他标准输出设备。

虽然不需要在 print()函数中传递参数,但它需要在末尾有一个空括号,告诉Python执行函数而不是按名称调用它。现在,让我们探索可与 print()函数一起使用的可选参数。

字符串字面量

python 的 print 语句中的字符串字面量主要用于格式化或设计使用 print()函数打印特定字符串时的显示方式。

  • \n :此字符串字面量用于在打印语句时添加新的空白行。
  • “”:空引号(“”)用于打印空行。

例子:

Python3
print("GeeksforGeeks \n is best for DSA Content.")


Python3
# This line will automatically add a new line before the
# next print statement
print ("GeeksForGeeks is the best platform for DSA content")
 
# This print() function ends with "**" as set in the end argument.
print ("GeeksForGeeks is the best platform for DSA content", end= "**")
print("Welcome to GFG")


Python3
import time
 
count_seconds = 3
for i in reversed(range(count_seconds + 1)):
    if i > 0:
        print(i, end='>>>')
        time.sleep(1)
    else:
        print('Start')


Python3
import time
 
count_seconds = 3
for i in reversed(range(count_seconds + 1)):
    if i > 0:
        print(i, end='>>>', flush = True)
        time.sleep(1)
    else:
        print('Start')


Python3
b = "for"
 
print("Geeks", b , "Geeks")


Python3
import io
 
# declare a dummy file
dummy_file = io.StringIO()
 
# add message to the dummy file
print('Hello Geeks!!', file=dummy_file)
 
# get the value from dummy file
dummy_file.getvalue()


Python3
# Python 3.x program showing
# how to print data on
# a screen
 
# One object is passed
print("GeeksForGeeks")
 
x = 5
# Two objects are passed
print("x =", x)
 
# code for disabling the softspace feature
print('G', 'F', 'G', sep='')
 
# using end argument
print("Python", end='@')
print("GeeksforGeeks")


输出:

GeeksforGeeks 
 is best for DSA Content.

结束=“”声明

end 关键字用于指定在 print()函数执行结束时要打印的内容。默认设置为“\n”,这会导致 print() 语句执行后换行。

示例:没有换行的Python print()。

Python3

# This line will automatically add a new line before the
# next print statement
print ("GeeksForGeeks is the best platform for DSA content")
 
# This print() function ends with "**" as set in the end argument.
print ("GeeksForGeeks is the best platform for DSA content", end= "**")
print("Welcome to GFG")

输出:

GeeksForGeeks is the best platform for DSA content
GeeksForGeeks is the best platform for DSA content**Welcome to GFG

刷新参数

Python中的 I/O 通常是缓冲的,这意味着它们以块的形式使用。这就是flush的用武之地,因为它可以帮助用户决定是否需要缓冲写入的内容。默认情况下,它设置为 false。如果设置为 true,则输出将被写为一个接一个的字符序列。这个过程很慢,因为它更容易分块写入而不是一次写入一个字符。为了理解 print()函数中 flush 参数的用例,我们举个例子。

例子:

想象一下,您正在构建一个倒数计时器,它每秒将剩余时间附加到同一行。它看起来像下面这样:

3>>>2>>>1>>>Start

初始代码如下所示;

Python3

import time
 
count_seconds = 3
for i in reversed(range(count_seconds + 1)):
    if i > 0:
        print(i, end='>>>')
        time.sleep(1)
    else:
        print('Start')

因此,上面的代码添加了没有尾随换行符的文本,然后在每次添加文本后休眠一秒钟。在倒计时结束时,它会打印 Start 并终止该行。如果您按原样运行代码,它会等待 3 秒并突然打印整个文本。这是由于文本块的缓冲造成的 3 秒的浪费,如下所示:

尽管缓冲是有目的的,但它可能会导致如上所示的不良影响。为了解决同样的问题,flush 参数与 print()函数一起使用。现在,将 flush 参数设置为 true 并再次查看结果。

Python3

import time
 
count_seconds = 3
for i in reversed(range(count_seconds + 1)):
    if i > 0:
        print(i, end='>>>', flush = True)
        time.sleep(1)
    else:
        print('Start')

输出:

分隔器

print()函数可以接受任意数量的位置参数。这些参数可以使用“,”分隔符相互分隔。这些主要用于在单个 print()函数中格式化多个语句。

例子:

Python3

b = "for"
 
print("Geeks", b , "Geeks")

输出:

Geeks for Geeks

文件参数

与流行的看法相反,print()函数不会将消息转换为屏幕上的文本。这些是由较低级别的代码层完成的,可以以字节为单位读取数据(消息)。 print()函数是这些层上的一个接口,它将实际打印委托给流或类似文件的对象。默认情况下,print()函数通过 file 参数绑定到sys.stdout

示例: Python print() 到文件

Python3

import io
 
# declare a dummy file
dummy_file = io.StringIO()
 
# add message to the dummy file
print('Hello Geeks!!', file=dummy_file)
 
# get the value from dummy file
dummy_file.getvalue()

输出:

'Hello Geeks!!\n'

示例:在Python中使用 print()函数

Python3

# Python 3.x program showing
# how to print data on
# a screen
 
# One object is passed
print("GeeksForGeeks")
 
x = 5
# Two objects are passed
print("x =", x)
 
# code for disabling the softspace feature
print('G', 'F', 'G', sep='')
 
# using end argument
print("Python", end='@')
print("GeeksforGeeks")

输出:

GeeksForGeeks
x = 5
GFG
Python@GeeksforGeeks