我该如何在Python中使用第三方“库”?

5

免责声明: 这是一个非常基础的问题,但请记住我来自微软背景,并且我主要使用Visual Studio中的.NET编程(这可能有助于您用类比帮助我)。


我开始为了好玩而学习一点Python编程,于是我下载了eclipse并安装了PyDev
后来我需要解析一个日期,然后我找到了一个似乎很有趣的time.strptime替代方案:python-dateutil
我下载了它,但在尝试使用它时遇到了问题。显然下载包括源文件,但我不知道如何在eclipse中的"项目"中使用它。
所以我的问题非常基础:
  • 我需要直接将源文件与我的文件一起包含吗?也许在子目录中?我该如何在代码中使用它(如何在 .py 文件中 导入 它们)?
  • 我需要“构建”(制作?)它们并引用它们吗?怎么做?在 Windows 中如何“编译”这样的东西?
  • 我是否完全忽略了一些重要的点?

感谢您的耐心。


除了这里的答案之外,阅读 http://docs.python.org/tutorial/modules.html。 - user395760
5个回答

11

我已经下载了它,但是在尝试使用时遇到了问题。显然,下载包括源文件,而我完全不知道如何在我的“项目”中在eclipse中使用它。

你应该在命令行中使用pip,例如:

pip install python-dateutil

这个命令会自动下载并安装相关库,如果你没有安装pip,请参考上面的文档了解如何安装。

我需要直接将源文件与我的文件一起包含吗?也许在一个子目录中?我该如何在我的代码中使用它(如何在我的.py文件中导入它们)?

如果你像上面那样使用了pip,就不需要这么做了,现在你只需要在你的脚本中导入dateutil即可:

import dateutil

我需要“构建”(make?)它们并引用它们吗?如何操作?在windows中如何“编译”这样的东西?

一切都可以使用pip完成(神奇吧 :))

我是否完全忽略了一些重要的点?

是的,Python很酷,易学且有趣,不用再考虑make、make install......Python中所有的东西都可以轻松安装。

还有,请一定使用pip(这是BDFL的命令)。

alt text

希望这可以帮助:)

1

你下载的tarball里面有一个Makefile,所以只需使用它:

make install

然后,在您想要使用新模块中的内容的文件中,像任何其他Python模块一样导入即可:

import dateutil

我尝试了这个,但是导入行显示为错误 - 你需要导入“目录名称”吗?它里面有几个.py文件,它只是导入所有内容,我可以使用dateutil目录中的任何函数吗? - juan
基本上,from dateutil import parser 可以让你使用 parser.parse() - nmichaels

1
我需要直接将源文件与我的文件一起包含吗?也许在子目录中?我该如何在代码中使用它(如何在我的.py文件中导入它们)? 你只需要导入.py文件。例如,如果您的模块名为x,则需要执行import x
我需要“构建”(make?)它们并引用它们吗?怎样引用?你怎么在Windows上“编译”这样的东西? 不需要。只需要执行import x并会创建一个x.pyc文件。这是模块x的字节编译版本。
我是否完全忽略了一些重要的要点?下载python-dateutil并将其解压缩到一个目录中。 然后您需要执行以下操作(在Windows上可能需要适当的权限。在此处here阅读更多信息) python setup.py install
这将自动安装(并因此复制)所有模块文件到Python解释器可以找到的路径。你可以通过使用import sys然后print sys.path来找到。这些将是解释器搜索模块的位置。
安装完成后,启动你的解释器,然后尝试import dateutil。如果一切正常,该模块应该被导入。
当你需要分发你的应用程序时,所有必要的模块都需要打包在一起。注意,你只需要包含py文件而不是pyc文件。
为了更好地理解如何打包源文件,你需要阅读关于disutitls模块的内容。这里是链接。

1
您下载的tarball中包含一个Makefile文件,只需使用它即可: make install 然后,在您想要使用新模块中的内容的文件中,像任何其他Python模块一样导入它: import dateutil

0

解压缩归档文件并执行:

python setup.py install

这里有详细信息。


这个“安装”模块会被安装在哪里? - juan
据我所知,它已经安装了Python。而且你必须在提取软件包的目录中执行此命令。 - ceth
这个“install”模块会被安装在哪里?请查看Python的site包文档。检查Python当前的安装位置。 - S.Lott
@demas 我没有Eclipse,所以我按照你的方法操作了。看起来似乎已经生效,但是还有其他我必须要做的事吗? - ghosts_in_the_code

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接