背景
执行python脚本时候,发现报错,AttributeError: module 'json' has no attribute 'loads'
Traceback (most recent call last):
File "SyncDataFromOnline.py", line 26, in <module>
json_text = json.loads(get.text)
AttributeError: module 'json' has no attribute 'loads'
但其实json 模块是存在的,那肯定是因为某种原因没有找到。
问题定位和解决
网上发现有位同学有同样的问题,他定义了一个json.py文件去执行一些json相关的操作方法。在执行的时候,也抛出了同样的错误。
那么,我们这个问题是否也是因为找错了文件导致的?
我们没有定义json.py文件。难道是找到了系统定义的文件?
- 利用 whereis python 查找到对应的python 安装目录,进入lib目录下:
- find 查找json带有json的文件,发现下面3个文件;
drwxr-xr-x 3 yb admin 96B 1 8 15:29 json
-rw-r--r-- 1 yb admin 529B 1 8 15:29 json_extensions-0.2.1-py3.8-nspkg.pth
drwxr-xr-x 10 yb admin 320B 1 8 15:29 json_extensions-0.2.1-py3.8.egg-info
同时也在网上找到了相似的例子,因为python使用了 json_extensions-0.2.1-py3.8-nspkg.pth 文件
我们删除此文件后,运行正常