UNIX env查找技巧
在一些UNIX系统上,也许可以避免硬编码Python解释器的路径,而可以在文件特定的第一行注释中像这样写:
#!/usr/bin/env python
…script goes here…
当这样编写代码的时候,env程序可以通过系统的搜索路径的设置(例如,在绝大多数的UNIX Shell中,通过搜索PATH环境变量中的罗列出的所有目录)定位Python解释器。这种方法可以使代码更具可移植性,因为没有必要在所有的代码中的第一行都硬编码Python的安装路径。
假设在任何地方都能够使用env,无论Python安装在了系统的什么地方,你的脚本都可以照样运行:跨平台工作时所需要做的仅仅是改变PATH环境变量,而不是脚本中的第一行。当然,这是env在任何系统中都是相同的路径的前提下(有些机器,还有可能在/sbin、/bin或其他地方);如果不是的话,这种可移植性也就无从谈起了。
点击文件图标
在Windows下,注册表使通过点击图标打开文件变得很容易。当Python程序文件点击打开时Python自动注册为所运行的那个程序。正因如此,你可以通过使用鼠标简单的点击(或双击)程序的图标来运行程序。
在非Windows系统中,也能够使用相似的技巧,但是图标、文件管理器、浏览的原理以及很多方面都有少许不同。例如,在一些UNIX系统上,也许需要在文件管理器的GUI中注册.py的扩展名!技巧使脚本成为可执行的程序,或者使用应用程序关联文件的MIME类型或通过编辑文件、安装程序等命令,或者使用其他的工具。如果一开始点击后不能正常的工作,请参考文件管理器的文档以获得更多细节。
为了讲清楚,让我们继续使用前面编写的script1.py脚本,其内容如下:
.# A first Python script
import sys # Load a library module
print(sys.platform)
print(2 ** 100) # Raise 2 to a power
x = ‘Spam!’
print(x * 8) # String repetition
我们已经介绍了,可以从一个系统命令行来运行这个文件:
C:\misc> c:\python30\python script1.py
win32
1267650600228229401496703205376
然而,点击图标可以让你不需要任何输入即可运行文件。