我使用名为PDFMiner(http://www.unixuser.org/~euske/python/pdfminer/)的软件包将pdf转换为html。
安装软件包后,我可以在任何地方运行pdf2txt.py,而不仅限于软件包所在的位置。
有人能向我解释这是怎么发生的吗?如果我写了一些python脚本,我怎么能在任何地方运行一些脚本? 感谢
答案 0 :(得分:-1)
阅读模块搜索路径。引用文档:
当导入名为spam的模块时,解释器首先进行搜索 对于具有该名称的内置模块。如果没有找到,则搜索 对于由。给出的目录列表中名为spam.py的文件 变量sys.path。 sys.path从这些位置初始化:
- 包含输入脚本(或当前目录)的目录。
- PYTHONPATH(目录名列表,语法与shell变量PATH相同)。
- 依赖于安装的默认值。
初始化后,Python程序可以修改sys.path。该 包含正在运行的脚本的目录放在开头 搜索路径的位置,在标准库路径之前。这意味着 将加载该目录中的脚本而不是模块 库目录中的名称相同。这是一个错误,除非 打算替换。有关更多信息,请参见标准模块 信息。
请参阅模块文档的第6.1.2节:located here
可能发生的是模块安装在某个地方,你的python解释器会在寻找要导入的模块时进行搜索。解释器将搜索的位置由sys.path变量定义。