argparse cli 中的 Python 模块

发布于 2024-12-05 11:47:42 字数 346 浏览 1 评论 0原文

我试图从 Linux SSH Secure Shell 命令行环境运行 python 脚本,并且尝试导入 argparse 库,但它给出错误:“ImportError:没有名为 argparse 的模块”。

我认为这是因为 Linux shell 使用的 Python 环境中没有 argparse 库,如果我能找到 Python 环境所使用的库的目录,我想我可以修复它。将 argparse 库复制到其中,但我找不到该目录所在的位置。

我将不胜感激找到这个目录的任何帮助(我想我现在可以将 argparse 库包含在与我的 python 脚本相同的目录中,但我更愿意将 argparse 库放在其他 Python 库所在的位置,因为它应该是)。

I am trying to run a python script from the Linux SSH Secure Shell command line environment, and I am trying to import the argparse library, but it gives the error: "ImportError: No module named argparse".

I think that this is because the Python environment that the Linux shell is using does not have the argparse library in it, and I think I can fix it fix it if I can find the directories for the libraries being used by the Python environment, and copy the argparse library into it, but I can not find where that directory is located.

I would appreciate any help on finding this directory (I suppose I could include the argparse library in the same directory as my python script for now, but I would much rather have the argparse library in the place where the other Python libraries are, as it should be).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

荒岛晴空 2024-12-12 11:47:43

Python 2.7 中添加了 argparse 模块。
http://docs.python.org/library/argparse.html

在 2.7 之前,处理命令行参数的最常见方法可能是 getopt。
http://docs.python.org/library/getopt.html

当然可以始终只需查看 sys.argv 即可手动处理命令行。然而,getopt 是一个很好的抽象层,argparse 甚至更好。

如果您确实在旧环境中需要 argparse(有争议),有一个 Google Code 项目在维护它,您可以将其包含在您的项目中。 http://code.google.com/p/argparse/

The argparse module was added in Python 2.7.
http://docs.python.org/library/argparse.html

Prior to 2.7, the most common way to handle command-line arguments was probably getopt.
http://docs.python.org/library/getopt.html

Of course you can always handle the command-line manually simply by looking at sys.argv. However getopt is a good abstraction layer, and argparse is even better.

If you truly need argparse in older environments (debatable), there is a Google Code project maintaining it, and you can include that in your project. http://code.google.com/p/argparse/

肥爪爪 2024-12-12 11:47:43

如果您使用的是 CentOS 并且没有简单的 RPM 来获取 Python 2.7,JF 建议的 pip install argparse 是不错的选择。在新的答案中调用这个解决方案。谢谢,JF。

If you're on CentOS and don't have an easy RPM to get to Python 2.7, JF's suggestion of pip install argparse is the way to go. Calling out this solution in a new answer. Thanks, JF.

谈场末日恋爱 2024-12-12 11:47:43

如果您使用 Centos 6 默认的 Python 2.6.6,只需手动添加包即可。

yum install python-argparse

这就是我让 IPython 工作所需的全部工作。奇怪的是,当我使用 YUM 安装 IPython 时,YUM 没有自动安装它。

Just add the package manually if your using Centos 6 default Python 2.6.6

yum install python-argparse

Thats all it took for me to get IPython to work. Odd that YUM didnt install it automatically when I used YUM to install IPython.

递刀给你 2024-12-12 11:47:43

您可以使用以下命令检查模块的搜索路径:

import sys
print "\n".join(sys.path)

但没有 argparse 很奇怪:它在标准库中......

You can examine the search path for modules with:

import sys
print "\n".join(sys.path)

But not having argparse is odd: it's in the standard library...

爱,才寂寞 2024-12-12 11:47:43

您可能使用的是较旧版本的 Python。

argparse 模块是最近在 Python 2.7 中添加的。

You're probably using an older version of Python.

The argparse module has been added pretty recently, in Python 2.7.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文