加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 如何安装six.moves.xmlrpc_client?

发布时间:2020-12-20 11:39:40 所属栏目:Python 来源:网络整理
导读:我正在从openstack复制一些代码片段,但是当它运行到: import six.moves.xmlrpc_client as xmlrpclib 我收到以下错误: import six.moves.xmlrpc_client as xmlrpclibImportError: No module named xmlrpc_client 我已经安装了六个包.如何解决这个问题呢?
我正在从openstack复制一些代码片段,但是当它运行到:

import six.moves.xmlrpc_client as xmlrpclib

我收到以下错误:

import six.moves.xmlrpc_client as xmlrpclib
ImportError: No module named xmlrpc_client

我已经安装了六个包.如何解决这个问题呢?

我正在使用python 2.7处理MacOS.

我尝试安装但失败了:

lichaos-MacBook-Pro:common lichao$sudo pip install --allow-unverified xmlrpclib xmlrpclib
Collecting xmlrpclib
  xmlrpclib is potentially insecure and unverifiable.
  Downloading http://effbot.org/media/downloads/xmlrpclib-1.0.1.zip
Installing collected packages: xmlrpclib
  Running setup.py install for xmlrpclib
    changing mode of build/scripts-2.7/xmlrpc_handler.py from 644 to 755
    changing mode of build/scripts-2.7/xmlrpcserver.py from 644 to 755
    changing mode of build/scripts-2.7/echotest.py from 644 to 755
    changing mode of /usr/local/bin/echotest.py to 755
    changing mode of /usr/local/bin/xmlrpc_handler.py to 755
    changing mode of /usr/local/bin/xmlrpcserver.py to 755
Successfully installed xmlrpclib-1.0.1

$sudo pip show six
---
Name: six
Version: 1.8.0
Location: /Library/Python/2.7/site-packages
Requires:

但是当我运行我的程序时,我仍然遇到同样的错误.如何解决问题?

解决方法

six.moves是一个虚拟命名空间.它提供对在Python 2和3之间重命名的包的访问.因此,您不应该安装任何东西.

通过从six.moves.xmlrpc_client导入,开发人员不必处理它在Python 2中位于xmlrpclib以及在Python 3中位于xmlrpc.client的情况.请注意,这些是标准库的一部分.

映射已添加到six version 1.5.0;确保您拥有该版本或更新版本.

Mac在/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python中预装了六个版本1.4.1,这将干扰您在site-packages中安装的任何版本(最后列出的版本)在sys.path中).

最好的解决方法是使用virtualenv并将其自己的六个版本与此项目所需的任何其他内容一起安装.为新项目创建一个新的virtualenv.

如果您必须在系统级别安装它,那么对于此特定项目,您将必须删除/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python路径:

import sys
sys.path.remove('/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python')

这将从您的路径中删除各种OS X提供的包,仅用于运行Python; Apple会根据自己的需要安装这些产品.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读