Arcade Academy:4. 打印功能

4. 打印功能

在本章之前,我们已准备好在设置系统中开始编码。我们通过安装 Python 编程语言来做到这一点 以及名为 PyCharm 的集成开发环境 (IDE)。你可以想想 Python 作为引擎,PyCharm 作为引擎的接口。

版本控制系统中,我们开始学习 git。 版本控制系统允许我们共享代码、分组处理代码以及 跟踪对代码的更改。我们将使用该工具来跟踪和共享您的代码 你在这本书中写的每一个实验。

在本章中,我们将使用最基本的程序编写我们的第一个程序 工具 在程序员的工具箱中,函数。此函数执行 正如您所期望的那样——它会打印到屏幕上。print

虽然许多程序都是基于图形的,但纯文本程序仍然很常见 与管理计算机或进行数据分析的人一起。即使对于基于图形的 我们在本书中开发的游戏,该函数将成为理解的重要帮助 以及调试我们的游戏。print

我们不仅限于在屏幕上打印。稍后在示例:保存高分中,我们将展示如何打印到文件,以便保存数据。程序甚至可以打印 通过网络连接,这是学习如何操作所需的开始 做网络编程。

4.1. 打印“Hello World”

我们将使用一个函数将文本输出到屏幕。 如果你上过几何课,你已经用过正弦(sin) 和余弦 (cos) 函数。在本章中,我们将使用 print 函数。

在编程中,我们经常使用函数。 函数是任何计算机程序中的基本构建块。 就像在数学中一样,当我们在编程中使用函数时,我们从函数名称开始,例如 sin、cos 和 print。 紧跟在函数名称后面的是一对括号:。 我们将任何函数参数放在括号内。( )

在下面的例子中,我们有一个函数, 括号和参数:

对于一个函数,我们输入一个角度作为我们的参数。 使用该函数,我们将要打印的文本作为参数:sinprint

文本必须用引号括起来,我们稍后会解释原因 变量和表达式一章。

4.2. 进入我们的程序

现在我们已经了解了函数的样子,让我们使用它来 进入我们的第一个程序。print

Hello World 程序是一个简单的程序,只需打印“Hello 世界“到屏幕上。它通常是任何程序员的第一个程序 用一种新的计算机语言创作。

首先,打开 PyCharm。 根据我们在设置系统版本控制系统方面的工作,我们应该 我们的 PyCharm 和我们的项目已经准备好了。你应该能够运行 PyCharm,并看到如下窗口:

../../_images/pycharm_1.png

PyCharm 窗口已准备好进行编码。

首先点击项目名称 (1) 旁边的三角形,然后找到 , (2)最后(3)。Testingtest.py

注意

这里最常见的错误是将 PyCharm 打开到错误的文件夹。 确保所有实验室文件夹都显示在文件夹中。如果他们 不要,选择文件...打开菜单并重新选择您的项目文件夹,如下所示 在 Pycharm 的 Open Project 中。一旦被选中 你不应该做一个文件...再次打开本书的其余部分。learn_arcade

选择后,继续输入您的第一个 程序:test.py

print("Hello World!")

4.3. 运行我们的程序

键入程序后,右键单击代码窗口中的任一位置或任意位置,然后选择print_statements.pyRun 'print_statements.py'

../../_images/pycharm_2.png

右键单击程序,然后选择运行。

您应该看到程序的输出出现在底部的窗口中 您的计算机:

../../_images/pycharm_3.png

我们的 Hello World 计划的输出。

4.4. 错误和警告

程序并不总是在第一次尝试时起作用。事实上,他们很少这样做。 作为程序员,我们一遍又一遍地运行程序,直到找到正确的代码。

如果计算机遇到不知道如何处理的错误,则 将生成错误并停止。不要惊慌,没什么大不了的。我们会 修复它。

除了程序根本无法运行的错误外,Python 还可以向我们显示警告。代码运行时会发出警告,但某些内容并不“完美”。

4.4.1. 错误

让我们创建一个错误。将函数更改为使用大写字母 : 。printPPrint

Print("Hello World!")

运行程序。你应该得到这样的东西:

Traceback (most recent call last):
  File "C:/Users/myusername/Documents/learn_arcade/Scratch Work/print_statements.py", line 1, in <module>
    Print("Hello World!")
NameError: name 'Print' is not defined

Process finished with exit code 1

退出代码

所有计算机程序在完成运行后都会返回一个称为退出代码的数字。 退出代码为 0 表示程序运行没有错误,任何其他数字都是信号 出了点问题。可以编写一个自动运行其他程序的程序, 此退出代码用于跟踪是否存在错误。

虽然它可能看起来令人困惑,但 Python 告诉您,在程序的第 1 行,它遇到了一个名为大写字母的函数。 但该功能尚未被“定义”。print_statements.pyPrintP

Python 区分大小写,这意味着小写字母和大写字母与 苹果和橙子到电脑。 小写函数内置于语言中,Python 确切地知道该如何处理它。大写函数没有内置到语言中, Python 抱怨说它不知道这个函数是什么。printpPrintPprintPrintNameError

让我们尝试不同的错误。回到使用小写字母,但去掉括号:printp

print "Hello World"

当您现在运行该程序时,您将获得:

File "C:/Users/myusername/Documents/learn_arcade/Scratch Work/print_statements.py", line 1
    print "Hello World!"
                       ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Hello World!")?

这是一种不同类型的错误,即语法错误术语语法起源于人类 语言,而不是计算机语言。人类语言和计算机语言都具有预期的结构 对他们来说。英语中的陈述可以采用名词后跟动词的形式。 “Rob runs.” 是有效的语句,而 “Runs Rob.” 则不是。计算机需要一个函数 名称后跟括号。如果你的程序不遵循这种模式,它 生成语法错误。

错误的类型和行号都是重要的线索 关于如何解开导致错误的谜团。

4.4.2. 警告

可以编写可以运行的代码,但不是很完美。 例如,让我们以 Hello World 程序为例,添加一些额外的空格:

print  ("Hello World!")

继续运行该程序。它应该运行而不会出现任何错误。

Python 标准是函数名称和 左括号。但是,此代码“足够接近”,计算机可以 运行良好,没有错误。用英语来说,如果我们去商店问 “我想买一个苹果,”我们的句子在语法上不正确。 它足够接近,任何人都可以弄清楚意图。

PEP-8型

Python 有一个样式指南,其中列出了如何正确格式化代码。 这个风格指南被称为 PEP-8

为什么要修复警告?在代码中发现错误时,程序员会花费大量时间 寻找不合时宜的东西。如果所有代码的格式都相同 更容易扫描查找问题。任何不一致都会迫使程序员的 大脑停下来弄清楚它是否重要。消除这些不一致之处 使调试更容易。

您可以通过查看右边距来使用 PyCharm 在代码中找到警告。 任何黄线都是警告。您可以将鼠标悬停在它上面以找到 详。

../../_images/pycharm_4.png

警告由屏幕右侧的黄线突出显示。

您在第一个程序中可能遇到的另一个警告是 Python 样式 指南指出,所有程序都应该在文件末尾有一个空行。 如果你养成了修复这些警告的习惯,你就会学会写作 更易于维护的代码。

注意

警告不仅仅是关于风格。您可能还会收到有关以下错误的警告: 可能在运行程序之前发生。例如,如果不传递一个数字 对于该函数,您可能已经编写了传入文本的代码。sin()

弱警告是主要与风格有关或不太可能的警告 最终成为错误。强警告是计算机认为可能指向的代码 一个最终会成为错误的错误。

4.5. 多条打印线

我们并不局限于一个声明。我们可以打印多行文本 多行代码。让我们把我们的 Hello World 程序改成陈词滥调的开场白 情节小说:print

print("It was a dark and stormy night.")
print("Suddenly a shot rang out!")

输出应如下所示:

It was a dark and stormy night.
Suddenly a shot rang out!

4.6. 转义码

如果使用引号告诉计算机您想要的文本字符串的开头和结尾 要打印,程序如何打印出一组双引号?

注意

双引号不是两个引号。

  • 这是一个双重引号:"

  • 这是一句话:'

  • 这是两个双引号:" "

此代码不起作用:

print("Hi! This is a double quote mark: " We use it for printing.")

如果我们尝试运行它,我们会收到语法错误:

File "S:/Webserver/arcade_book/test.py", line 1
    print("Hi! This is a double quote mark: " We use it for printing.")
                                              ^
SyntaxError: invalid syntax

计算机查看字符串中间的引号,并认为这是文本的结尾。 然后它不知道如何处理引号后面的文本。它不需要文本 结束引号,所以我们最终会得到一个错误。

有必要告诉计算机,我们要将中间的双引号视为文本, 不作为结束字符串的引号。 为此,我们需要使用转义码。转义码是一系列字符, 可用于打印原本无法打印的字符。

Python 中的所有转义代码都以反斜杠开头:.(反斜杠向后倾斜。前锋 斜线向前倾斜。双引号的转义码为:\/\"

print("Hi! This is a double quote mark: \" We use it for printing.")

如果我们运行此代码,它不会打印反斜杠,也不会出错。我们得到:

Hi! This is a double quote mark: " We use it for printing.

几乎每种语言都有转义码,其中许多语言(C、C#、Java)都使用反斜杠 就像 Python 一样。

下面是另一个示例:

print("Audrey Hepburn once said \"Nothing is impossible. The word itself says 'I'm Possible!'.\"")

这将打印:

Audrey Hepburn once said "Nothing is impossible. The word itself says 'I'm Possible!'."

由于反斜杠用作转义码的一部分,因此如果要使用 一。例如,以下代码无法正常工作:

print("The file is stored in C:\new folder")

为什么?因为是一个转义码。要打印反斜杠,必须像这样对它进行转义:\n

print("The file is stored in C:\\new folder")

还有一些其他重要的转义代码需要了解。以下是重要转义代码的表格:

转义码

描述

\'

单行情

\"

双引号

\t

标签

\r

回车(缩写为CR,将光标向左移动)

\n

换行符(缩写为 LF,向下移动光标)

什么是“回车”和“换行符”?请尝试以下示例:

print("This\nis\nmy\nsample.")

此命令的输出为:

This
is
my
sample.

是换行符。它会移动“光标”,计算机将向下打印一行文本。计算机存储所有 一大行文字。由于字符的位置,它知道在不同的行上显示文本。\n\n

在互联网普及之前,计算机对使用哪些字符作为行尾没有达成一致:

转义码

描述

\r\n

CR+LF:Microsoft Windows

\n

LF:基于 UNIX 的系统和更新的 Mac。

\r

CR:基于 Mac 的旧系统

当计算机连接到网络上时,具有不同的标准很烦人。这 后互联网标准是用于行尾。\n

如果您使用转义码,请不要在其周围放置空格。不要,除非你想要空间 那里。 例如,以下代码可能看起来更好:

print("This \n is \n my \n sample.")

但它会在以下字之前打印额外的空格:

This
 is
 my
 sample.

仅仅因为您可以使用 a 在单个语句中打印多行 并不意味着你应该这样做。通常,阅读两个简短的陈述更容易 而不是一个超长的语句,里面塞满了一堆转义码。\nprintprintprint\n

4.7. 三引号

如果你有一个文本块,不想花很多时间加引号 在每一行周围,您可以使用三引号。

print("""You can print
on multiple
lines using
triple
quotes.""")

此代码将像这样运行和打印出来:

You can print
on multiple
lines using
triple
quotes.

添加额外的空行和缩进是很诱人的。不要这样做,除非你 希望它们在最终输出中。例如,此示例中的代码看起来更好 比上一个示例中的代码:

print("""You can print
        on multiple
        lines using
        triple
        quotes.""")

但输出将包括所有这些额外的空间:

You can print
         on multiple
         lines using
         triple
         quotes.

4.8. 评论

在本章中,我们学习了计算机最基本的构建块之一 程序是函数。 我们正在学习的第一个功能是函数, 用于将信息输出到屏幕。 我们通过输入并运行我们的第一个程序来学习如何使用该功能。 由于程序并不总是在第一次尝试时工作,因此我们了解了名称错误语法错误。我们了解到代码有一个名为 PEP-8 的样式指南,它定义了代码的格式。 可以使用三种技术打印多行:多打印语句、转义码三引号。我们了解到,转义码也可用于 打印引号和制表符。print

4.8.1. 实验 1:第一个程序

使用您在设置系统和文件集中设置的计算机 您在版本控制系统中克隆以创建您的第一个程序 在实验 1:第一个程序中。然后学习 将代码提交到版本控制系统并上交。

相关推荐

  1. C#网页打印功能实现

    2024-04-07 10:32:01       43 阅读
  2. log4j日志打印配置

    2024-04-07 10:32:01       69 阅读
  3. OD(4)之libunwind打印堆栈信息

    2024-04-07 10:32:01       47 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-07 10:32:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-07 10:32:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-07 10:32:01       82 阅读
  4. Python语言-面向对象

    2024-04-07 10:32:01       91 阅读

热门阅读

  1. 实现精简的通用环形缓冲器或环形队列

    2024-04-07 10:32:01       38 阅读
  2. 碧桂园服务:以长期主义走出稳健增长曲线

    2024-04-07 10:32:01       41 阅读
  3. [计算机网络] I/O多路复用(Epoll)

    2024-04-07 10:32:01       30 阅读
  4. Spring Boot实现Filter解决跨域问题

    2024-04-07 10:32:01       36 阅读
  5. FPGA和ARM学习那个比较好

    2024-04-07 10:32:01       33 阅读
  6. 【LeetCode热题100】【动态规划】杨辉三角

    2024-04-07 10:32:01       39 阅读
  7. python+ opencv(Mat)——笔记

    2024-04-07 10:32:01       33 阅读
  8. leetcode594-Longest Harmonious Subsequence

    2024-04-07 10:32:01       32 阅读
  9. redis bigKey问题

    2024-04-07 10:32:01       37 阅读