python如果模块是标准库的一部分,安装在 site-packages

python2.4里加入了一个新的命令行选项(或开关),允许从shell或DOS提示符,直接把模块作为脚本来执行。当以脚本的方式来书写你的模块的时候,执行它们是很容易的。... python2.4 里加入了一个新的命令行选项(或开关),允许从 shell 或 DOS 提示符,直接把模块
作为脚本来执行。当以脚本的方式来书写你的模块的时候,执行它们是很容易的。你可以使用命令
行从你的工作目录调用你的脚本。
$ myScript.py # or $ python myScript.py
如果模块是标准库的一部分,安装在 site-packages 里,或者仅仅是包里面的模块,处理这样
的模块就不是那么容易了,尤其是它们共享了已存在的同名 python 模块。举例来说,你想运行免费
的 python web 服务器,以便创建和测试你自己的 web 页面和 CGI 脚本。
你将必须在命令行敲入如下的东西:
$ python /usr/local/lib/python2x/CGIHTTPServer.py
Serving HTTP on 0.0.0.0 port 8000 ...
这是段很长的命令,如果它是第三方的,你不得不深入到 site-packages 去找到它真正定位的
地方。如果没给出完全的路径名,可以从命令行运行一个模块,并让 python 的导入机制为我们做这
种跑腿工作吗?答案是肯定的。我们可以用 python -c 命令行开关:
$ python -c "import CGIHTTPServer; CGIHTTPServer.test()"

哪位能帮我解释下,这个跟site-packages有什么关系,为什么前面需要路径,后面就不需要路径了。
展开
 我来答
bdwisyou7d
2013-09-04 · TA获得超过1.3万个赞
知道大有可为答主
回答量:3774
采纳率:81%
帮助的人:1074万
展开全部
估计是解释不清楚的。不过勉强解释一下吧。

site-packages里面放的是第三方包。

包可以通过import 引入程序中。

python脚本执行,可以直接双击脚本,运行脚本,或者是python +脚本

python -c “代码,用分号分隔” 是一种快速执行一段python代码的方式

至于脚本的路径是一定要加的。除非它就在当前目录。

至于import 为什么不加路径,加了反对错呢? 这是因为import 缺省会从python目录,site-pacakges,系统目录,当前目录,等按顺序尝试找包。如果能找到当然不要目录名。 如果找不到也可以使用__import__命令加上路径导入。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式