Python 基础教程(3rd ed)(15):快速上手:基础知识 1.10.2

阅读数:22 2019 年 10 月 26 日 09:30

Python基础教程(3rd ed)(15):快速上手:基础知识 1.10.2

(保存并执行程序:让脚本像普通程序一样)

在有些情况下,你希望能够像执行其他程序(如 Web 浏览器或文本编辑器)一样执行 Python 脚本,而无需显式地使用 Python 解释器。UNIX 提供了实现这种目标的标准方式:让脚本的第一行以字符序列#!(称为 pound bang 或 shebang)开始,并在它后面指定用于对脚本进行解释的程序(这里是 Python)的绝对路径。即便你对这一点不太明白,只需将下面的代码作为脚本的第一行,就可在 UNIX 中轻松运行脚本:

复制代码
#!/usr/bin/env python

不管 Python 库位于什么地方,这都将让你能够像运行普通程序一样运行脚本。如果你安装了多个版本的 Python,可用更具体的可执行文件名(如 python3)替换 python。

要像普通程序一样运行脚本,还必须将其变成可执行的:

复制代码
$ chmod a+x hello.py

现在,可以像下面这样来运行它(假定当前目录包含在执行路径中):

复制代码
$ hello.py

如果这不管用,请尝试使用./hello.py,这在当前目录(.)未包含在执行路径中时也管用(负责的系统管理员会告诉你执行路径是什么)。

如果你愿意,可对文件进行重命名并删除扩展名.py ,使其看起来更像普通程序。

如果双击会如何呢

在 Windows 中,扩展名.py 是让脚本像普通程序一样的关键所在。请尝试双击前一节保存的文件hello.py 。如果正确地安装了Python,这将打开一个DOS 窗口,其中包含提示信息What is your name? 1。然而,这样运行程序存在一个问题:输入名字后,程序窗口将立即关闭,你根本来不及看清结果。这是因为程序结束后窗口将立即关闭。尝试修改脚本,在末尾添加如下代码行:

1 是否会这样取决于你使用的操作系统以及安装的 Python 解释器。例如,在 macOS 中,如果文件是使用 IDLE 存储的,双击文件将只会在 IDLE 代码编辑器中打开它。

复制代码
input("Press <enter>")

现在运行这个程序并输入名字后,DOS 窗口将包含如下内容:

复制代码
What is your name? Gumby
Hello, Gumby!
Press <enter>

等你按回车键后,窗口将立即关闭,因为程序结束了。

评论

发布