[Python] TypeError: ‘module’ object is not callable
我不会Python,但由于作业需要写几个爬虫,便接触了一下。遇到错误
TypeError: ‘module’ object is not callable
导入模块
from xxxxxxxx import MyEncoder
调用处代码
line = json.dumps(dict(item), cls=MyEncoder, indent=4, ensure_ascii=False)+',\n'
其中MyEncoder是我自己写的一个模块
MyEncoder.py
import json
class MyEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, bytes):
return str(obj, encoding='utf-8')
return json.JSONEncoder.default(self, obj)
出现报错TypeError: ‘module’ object is not callable的原因在于,cls=MyEncoder中的MyEncoder不是我的class MyEncoder,因此,改为
line = json.dumps(dict(item), cls=MyEncoder.MyEncoder, indent=4, ensure_ascii=False)+',\n'
问题解决