如何打印出信息是作为初级程序员首先要学习的事情之一。
本文介绍了有关使用 Python 进行打印所需了解的知识,并且我们还将查看大量的代码示例。
让我们开始吧!
print有何用途?
当你开始 Python 学习之旅时,打印很可能是你学到的第一件事。
编写“Hello World”程序作为第一行代码是一种传统。您可以使用函数 print()
将该段文本输出到控制台来实现这一点。
打印主要用于向控制台显示信息,无论是显示某条消息还是计算结果。但它也用于调试目的。
Python 2 中的打印与 Python 3 中的打印
为了在 Python 2 中将某些内容打印到控制台,您只需使用关键字 print
:
print "Hello world"
#output
#Hello world
这被称为印刷声明。
在 Python 3 中,print 语句被函数取代 print()
。
print("Hello world")
#output
#Hello world
如果您没有 print
在 Python 3 中添加后面的一组左括号和右括号,则运行代码时会出现错误:
print "Hello world"
#output
#File "/Users/dionysialemonaki/python_articles/demo.py", line 1
# print "Hello world"
# ^^^^^^^^^^^^^^^^^^^
#SyntaxError: Missing parentheses in call to 'print'. Did you mean #print(...)?
因此在 Python 2 中,print 关键字是一个语句,而在 Python 3 中 print 是一个函数。
print()
Python 中的语法
该函数的完整语法 print()
以及其所采用的参数的默认值如下所示。
其 print()
内部结构如下:
print(*object,sep=' ',end='\n',file=sys.stdout,flush= False)
让我们分解一下:
-
*object
可以没有、有一个或多个要打印的数据值,并且可以是任何数据类型。对象在打印前会转换为字符串。 -
sep
是可选参数,指定如何分隔多个对象。默认值为' '
空格。 -
end
是一个可选参数,指定行将以什么结束。默认情况下,print 调用以换行符结束,即为\n
换行符。 -
file
是一个可选参数,它是一个具有写入方法的对象 - 它可以写入并附加(添加)输出到文件。默认为sys.stdout
(或系统标准输出),输出显示在屏幕上。 -
flush
是一个布尔参数,指定流是否将被强制刷新或缓冲。Flushed 表示打印调用是否会立即生效。默认值为 False(或缓冲)。
该 print()
函数没有返回值。
如何在 Python 中打印对象
即使您没有传递任何参数 print()
- 也就是说您没有传递任何要打印的对象 - 您仍然需要包含一组空括号。
在这种情况下,这只会向控制台输出一个空白行。
使用 Python REPL(读取求值打印循环)时可以最好地说明这一点。
要开始新会话,请在您的机器上安装 Python 后输入 python3
。完成后,输入 exit()
以结束会话。
>>> print()
>>>
这类似于 Enter
在文字处理器中输入文字时按下键盘上的某个键。就像 Enter 键创建新行并将光标移动到新行一样,同样, print()
不带参数的调用会显示一个空行。
如何在 Python 中打印字符串
您可以通过将字符串文字作为参数传递给 来打印字符串 print()
,并用单引号或双引号括起来。
输出将是字符串文字,不带引号。
print("I am learning Python")
#output
#I am learning Python
如果你有一组要打印的字符串或短语,你可以将其存储在变量中,并将变量名作为参数传递给 print()
.
greeting = "Hey there!"
print(greeting)
#output
#Hey there!
最好根据变量中存储的内容为其赋予有意义的名称。这将使您自己和与您一起工作的其他人更容易阅读代码。
如前面的语法所示 print()
,可以传递多个对象作为参数( *object
)。
用逗号分隔每个参数来 实现这一点 .
print("Hello","there!")
#output
#Hello there!
有两个参数:“Hello”和“there!”。
在下面的例子中,参数是一个字符串文字和一个变量。
full_name = "John Doe"
print("Hey",full_name)
#output
#Hey John Doe
您还可以使用 加法运算符的 连接
full_name = "John Doe"
print("Hey " + full_name)
#output
#Hey John Doe
使用连接时,您必须考虑空格,否则最终会得到以下结果:
full_name = "John Doe"
print("Hey" + full_name)
#output
#HeyJohn Doe
请记住,不能将字符串文字与数字相加。
这会导致错误:
print("Hey" + 7)
#output
#Traceback (most recent call last):
# File "/Users/dionysialemonaki/python_articles/demo.py", line 1, in #
# print("Hey" + 7)
#TypeError: can only concatenate str (not "int") to str
正如错误所暗示的,您只能将一个字符串连接(添加)到另一个字符串。这意味着,如果您想包含一个数字,您必须通过类型转换将其转换为其字符串等价物。
#use the str() method to convert an integer to a string
print("Hey" + str(7))
#output
#Hey 7
打印对象的现代方法是使用 f 字符串
.
full_name = "John Doe"
print(f"Hey there {full_name}")
#output
#Hey there John Doe
字符串不是唯一可以作为参数传递的对象。
事实上, print()
它接受所有类型的数据类型,您将在后面的部分中看到它们。
如何打印其余 Python 内置数据类型的示例
#how to print ints
print(7) #output is 7
#how to print floats
print(7.0) #output is 7.0
#how to print complex
print(1j) #output is 1j
#how to print a list
print([10,20,30]) #output is [10,20,30]
#how to print a tuple
print((10,20,30)) #output is (10,20,30)
#how to print a dictionary
print({"language": "Python", "field": "data science"})
#output is {"language": "Python", "field": "data science"
#how to print a set
print({"autumn","winter","spring","summer"})
#output is {"autumn","winter","spring","summer"}
#how to print a bool
print(True) #output is True
print(False) #output is False
如何更改 print()
函数
正如您在函数的语法中看到的 print()
, sep
它确定一个对象与下一个对象如何分离。
默认情况下,对象由一个空格分隔。
print("Hello","World")
#output
#Hello World
要禁用该功能,请明确将值更改 sep
为所需的字符。
例如,对象可以用破折号分隔:
print("Hello","World", sep="---")
#output
#Hello---World
或者您甚至可以通过添加空字符串来删除空格:
print("Hello","World", sep="")
#output
#HelloWorld
如何删除 print()
正如你之前在函数的语法分解中看到的 print()
,关键字参数的默认参数 end
是 '\n'
.
默认情况下,每次打印调用后都会创建一个新行。
如果您连续两次单独调用 print,您将看到第二次调用在第一次调用之后立即显示在换行符上。
print("Hello")
print("World")
#output
#Hello
#World
要禁用此功能,您可以明确将值更改 end
为空字符串, ""
.
print("Hello ", end="")
print("World")
#output
#Hello World
如今,两者已站在同一战线上。
您甚至可以将其改为句号:
print("Hello", end=".")
print("World")
#output
#Hello.World
任何非默认值都会抑制创建的换行符。
如何 print()
在 Python 中将输出定向到文件
您最希望将输出打印到标准输出或命令行标准输出。
然而,有时您可能希望将该输出直接发送到现有文件。
假设您有一个文本文件并想使用该 print()
函数添加一些文本。
要在 Python 中打开并写入文件,请调用该 open()
函数。在本例中,您将在函数中包含文件的名称 output.txt
以及 -w
模式(表示仅用于写入)。
在这种模式下,每次运行代码时,文件的内容都会被删除并替换为您添加的任何新文本。
如果您不想丢失任何内容,您可以使用该 -a
模式,将文本附加到文件末尾。
在 print()
函数内部,您可以添加要添加到文件的任何文本,并将参数设置 file
为您为要添加文本的文件创建的占位符名称,在本例中 f
.
with open('output.txt', 'w') as f:
print('Hello World!', file=f)
结论
感谢您阅读并坚持到最后!希望本教程对您有所帮助。现在您已经了解了如何 print()
在 Python 中使用该函数的基础知识。
如果您有兴趣了解有关 Python 编程语言的更多信息,请查看 的 Python 认证 以帮助您入门。
它涵盖了所有基本的编程概念,并逐步发展到更高级的主题。最后,您还将构建五个项目来巩固您的学习。
祝你编码愉快!
发表评论 取消回复