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
Comments NOTHING