Python程序的文件结构
Python的源程序文件通常以 .py 结尾,第一行为 shellbang,即执行脚本时通知文件内容要使用哪个解释器来解释,Python 当中一切皆对象。
Python程序可以分解成模块、语句、表达式和对象。程序由模块组成,模块包含语句,语句包含表达式,表达式建立并处理对象
查看python版本
我们可以使用以下命令来查看我们使用的 Python 版本:
1 | python -V |
以上命令执行结果如下:
1 | Python 3.7.3 |
也可以进入 Python 的交互式模式,查看版本:
1 | python |
直接在命令行界面执行 Python 即可进入交互式
1 | Python 3.7.3 (default, Jun 24 2019, 15:02:19) |
编写和执行第一个Python程序
对于大多数程序语言,第一个入门编程代码便是 Hello World !,可以通过以下两种方式来实现
交互式解释器
1 | python |
直接在命令行界面执行 Python 即可进入交互式
1 | Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)] on win32 |
Python 程序文件
交互模式下的程序执行完成后难以再次运行,将编写的程序保存至文件(.py结尾)则很方便地多次运行。Python 的此类包含了一系列预先写好的语句程序文件称作 “ 模块 ”。能够直接运行的模块文件通常称作脚本(即程序的顶层文件)
1 | #!/usr/bin/python3 |
第1行为注释。在 Python 中,注释以 # 开始,作用范围为该行。第2行为空行,Python 会忽视空行,但空行通常有助于将大块代码分割,以便于阅读。第3行为 Python 代码,其中调用了 print() 函数
在UNIX上,当某程序在控制台中被引用时,该文件的头两个字节先被读入。如果这两个字节是ASCII字符 #! , shell 就会认为该文件将要由解释器执行,并且该文件的首行指定了要使用哪个解释器。该行称为 shebang ( shell 执行)行,如果存在,就必须为可执行文件的首行。shebang 行通常呈现为如下两种形式之一:
1 | #!/usr/bin/python3 |
1 | #!/usr/bin/env python3 |
如果是第一种形式,就会使用指定的解释器。如果是第二种形式, 就会使用在 shell 当前环境中发现的第一个 python 解释器。第二种形式具有更强的适应性,因为这种情况考虑了 Python 解释器位于 /usr/bin 之外(比如,安装在 /usr/local/bin 或 $HOME 等目录之下)的可能性。
将以上代码保存在 hello.py 文件中并使用 python 命令执行该脚本文件。
1 | python3 hello.py |
以上命令输出结果为:
1 | Hello, World! |
关于实例中第一行代码 #!/usr/bin/python3 的理解,如果调用 python 脚本时分成两种情况:
- 使用
python script.py时,#!/usr/bin/python被忽略,等同于注释 - 使用:
./script.py时,#!/usr/bin/python指定解释器的路径
这句话仅仅在 linux 或 unix 系统下有作用,在 windows 下无论在代码里加什么都无法直接运行一个文件名后缀为.py的脚本,因在windows下文件名对文件的打开方式起了决定性作用