我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python安装demjson模块报错:error in demjson setup command: use_2to3 is invalid

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python安装demjson模块报错:error in demjson setup command: use_2to3 is invalid

本来是项目中使用 demjson 包的 JSON 功能,但是安装的时候报错了。

A new release of pip available: 22.3.1 -> 23.0.1

这个原因是说 pip 包的版本太低了,需要升级到 23.0.1。

使用 DOS 命令,进入到项目的目录下执行以下命令:

python -m pip install --upgrade pip

此时再安装 demjson 包还是报错:

pip install demjson

报错如下: 

重点是这样一句话: 

error in demjson setup command: use_2to3 is invalid

 查看 pip 版本:

pip  -V

看到确实是升级到了  23.0.1 了。

通过查资料给出了解决方案,下面给出文章的地址:

安装demjson时报错 error in demjson setup command: use_2to3 is invalid

这篇文章的说法是:

demjson 2.2.4 兼容python2和python3,当安装环境为python3时,有一部分代码需要转换,Setuptools从版本58.0.0开始不再支持2to3的builds,所以导致 demjson 2.2.4安装后不再可用,
降级setuptools版本即可解决。

根据这篇文章给出的方案,执行以下命令:

pip install --upgrade setuptools==57.5.0

 此时再使用 demjson 已经正常了。

但是这种方案直接把 setuptools 的版本从 65.5.1 降级到了 57.5.0,是否对于项目有影响目前还未知。

个人感觉这种降级的方案更适合个人练习,或者 demo 项目,如果是公司项目的话,很多时候我们不能做出这种降级的事情的。

所以,如有可能,我们还是需要使用其他版本解决 demjson 不兼容问题的。另外的方法就是,如果无法解决那就不适用 demjson 模块,毕竟 Python3 中自带的有 JSON 库,只需要导入即可:

#!/usr/bin/pythonimport jsondata = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]data2 = json.dumps(data)print(data2)# 想输出成 JSON 格式,必须添加 indent=4 参数,取值一般是4# 当然你喜欢的话也可以是其他,比如2dataJson2 = json.dumps(data, indent=4, separators=(', ', ' : '))print(dataJson2)jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}';text = json.loads(jsonData)print(text)
函数描述
json.dumps将 Python 对象编码成 JSON 字符串
json.loads将已编码的 JSON 字符串解码为 Python 对象

 这样就避免了升级 demjson 版本,进而导致 Setuptools(Python打包工具)版本过高的问题。

下面我们说一说 pip 和 Setuptools。

以下来源百度百科:

pip 是一个现代的,通用的 Python 包管理工具。提供了对 Python 包的查找、下载、安装、卸载的功能。pip 已内置于 Python 3.4 和 2.7 及以上版本,其他版本需另行安装。

常用方法有:

install 【 安装包安装 (Install packages.)】download 【 下载下载包 (Download packages.)】uninstall 【 卸载卸载包 (Uninstall packages.)】search 【 搜索PyPI查找包 (Search PyPI for packages.)】help 【 帮助显示命令的帮助 (Show help for commands.)】

具体使用方法是:

pip  install demjson

setuptools是 Python Enterprise Application Kit(PEAK)的一个副项目,它 是一组Python的 distutilsde工具的增强工具(适用于 Python 2.3.5 以上的版本,64 位平台则适用于 Python 2.4 以上的版本),可以让程序员更方便的创建和发布 Python 包,特别是那些对其它包具有依赖性的状况。

详情可以百度,或者看这篇文章:

Setuptools(Python打包工具)

来源地址:https://blog.csdn.net/qq_42971035/article/details/129655525

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python安装demjson模块报错:error in demjson setup command: use_2to3 is invalid

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录