显示报错ValueError: Circular reference detected

显示报错ValueError: Circular reference detected

http://img1.sycdn.imooc.com//climg/5f424aa8096c26b514492519.jpg

http://img1.sycdn.imooc.com//climg/5f424aaa09b7b96f14492519.jpg

---------------------------------------------------------------------------------------------

C:\Users\Administrator\venv\Scripts\python.exe E:/慕课网/gift/admin.py

Traceback (most recent call last):

  File "E:/慕课网/gift/admin.py", line 96, in <module>

    admin.update_user_active(username="小慕")

  File "E:/慕课网/gift/admin.py", line 55, in update_user_active

    self._Base__change_active(username=username)

  File "E:\慕课网\gift\base.py", line 174, in __change_active

    self.__save(users, self.user_json)

  File "E:\慕课网\gift\base.py", line 311, in __save

    data = json.dumps(data)  # data无法转换为字符串类型

  File "E:\Anaconda\Anaconda3\lib\json\__init__.py", line 231, in dumps

    return _default_encoder.encode(obj)

  File "E:\Anaconda\Anaconda3\lib\json\encoder.py", line 199, in encode

    chunks = self.iterencode(o, _one_shot=True)

  File "E:\Anaconda\Anaconda3\lib\json\encoder.py", line 257, in iterencode

    return _iterencode(o, 0)

ValueError: Circular reference detected

1

2

3 {'dewei': {'username': 'dewei', 'role': 'admin', 'active': True, 'create_time': '2020-08-22 17:34:57', 'update_time': '2020-08-22 17:34:57', 'gift': []}, '小慕': {'username': '小慕', 'role': 'normal', 'active': True, 'create_time': '2020-08-22 17:37:37', 'update_time': '2020-08-23 18:47:22', 'gift': [], '小慕': {...}}}

4 {'dewei': {'username': 'dewei', 'role': 'admin', 'active': True, 'create_time': '2020-08-22 17:34:57', 'update_time': '2020-08-22 17:34:57', 'gift': []}, '小慕': {'username': '小慕', 'role': 'normal', 'active': True, 'create_time': '2020-08-22 17:37:37', 'update_time': '2020-08-23 18:47:22', 'gift': [], '小慕': {...}}} <class 'dict'>


Process finished with exit code 1

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学,你好。同学看下__change_active()位置的代码,下图中的位置应该是users

http://img1.sycdn.imooc.com//climg/5f431da70940d7ff08240330.jpg

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

好帮手慕美 2020-08-23 19:47:39

同学,你好,该错误为存在循环引用,同学可以将该语句赋值给其他变量

http://img1.sycdn.imooc.com//climg/5f42571e0934de9e02990114.jpg

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

  • 是换个变量名还是什么? 最后不是都指向同一个内存地址?
    2020-08-23 22:57:25
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师