Lecture

lab

1. 环境配置

编辑器(Editor)(如记事本)VS 集成开发环境(Integrate Development Environment,IDE)

  • Visual Studio 是 IDE
  • VScode 是 Editor

2. 终端与命令

提示符”(Prompt),它本身代表了一些当前系统的信息,在提示符后可输入命令执行

记得观看The Missing Semester of Your CS Education

3. Python 基础

Python代码主要由表达式(Expression)和语句(Statement)组成。而为了执行程序员编写的Python代码,有一个叫Python解释器(Python Interpreter)的软件来负责 一行一行 地读取Python代码来执行。

Python解释器有一个“交互模式”,能支持我们以交互的方式在终端上一行一行地向Python解释器输入Python代码,来即时地查看相应的执行结果。

  • 使用 exit()或、quit()或 Ctrl+z 退出交互

键入$ python hello. Py,即输入python 文件名(或python3 文件名)命令来执行这个Python代码文件

文件查找与当前工作目录的切换

通过 cd(change directory)命令来切换当前工作目录

  • 使用绝对路径:cd C:\SICP\lab00\code
  • 使用相对路径: 比如,如果你当前的工作目录为 C:\SICP\lab00,并且这个目录下还有一个 code 目录,可以使用cd code
  • ..的含义为上一级目录。.的含义为当前目录。可以使用cd a\b\c这样的形式一口气进入多层目录(a\b\c就是所谓的相对路径)
    • cd ..\.. # 进入上层目录的上层目录
    • cd ..\lab00 # 进入上层目录的lab00目录
  • 注:Windows上路径的目录之间使用\分割,而macOS和Linux则使用/分割

通过 dir 命令(在Windows上)或 ls 命令(在macOS和Linux上)显示当前目录下的文件

命令的格式

$ executable [-option [parameter]]... [positional-parameter]...
  • executable是一个可执行文件,比如在命令python --version中,executable就是python——它正是我们在第一节配置Python环境中所下载的可执行文件。
  • [-option [parameter]]...的中括号表示“可选”,省略号表示零个或多个。
    • 它们加起来的意思是,executable 后面可以跟零个或多个形如 -option [parameter] 这样的东西
    • -option 代表一个选项, -option [parameter] 代表选项后面可以跟一个可选的参数 parameter,这视具体的选项而定——有的选项需要parameter,有的就不需要。
    • - [positional-parameter]... 是位置参数,通常是文件名、目录名或其他输入数据。它们的顺序通常很重要。
      • 代表零个或多个positional-parameter。这种positional-parameter与-option parameter中parameter的区别是,它不会跟在选项后面。

此外,-option一般有两种约定俗成的形式:

  • 一种是像--version这样的由两个连字符加上一个单词的形式。这种形式长得很“长”,方便理解。
  • 一种是像-i这样的由一个连字符加上字母(一般是某个单词的首字母)的形式。这种形式长得很“短”,方便输入。

4. 作业文件

一段被三引号 """ 包围的文本。我们把这段文本叫做docstring(全称document string,即文档字符串)。它一般被用来描述一个函数应该做什么。

  • docstring 中通过 >>> 表示交互模式,代表交互模式下输入输出的结果
  • doctest 模块搜索文档字符串中的交互式 Python 示例,执行这些示例代码,然后验证实际输出是否与文档中的预期输出相匹配。这是一种编写和维护文档和测试的简便方法。
  • 执行 python -i lab00.py 进入交互模式

自动化测试

  • Python的doctest模块可以自动执行文件中的所有doctest测试,包括你没有完成的函数也会一起测试。我们可以在终端中输入 python -m doctest lab00.py,这个命令的内部原理基本上和手动执行的过程一模一样。
  • 如果你想在运行时看到更多的输出,包括每个测试的结果,可以使用 -v 标志:
    $ python -m doctest -v lab00.py