fp.write(json.dumps(end, fp, ensure_ascii=False)) TypeError: dumps() takes 1 positional argument but 2 positional arguments (and 1 keyword-only argument) were given这又是为什么
时间: 2024-02-12 12:09:54 浏览: 261
解决json中ensure_ascii=False的问题
这个错误提示是因为 `json.dumps()` 函数只接受一个位置参数,即要进行序列化的 Python 对象。但在这个代码中,`json.dumps()` 函数传入了两个位置参数,第一个是要序列化的对象 `end`,第二个是文件对象 `fp`,这是不正确的。
正确的写法是将 `end` 对象序列化后,将结果写入文件对象 `fp` 中,代码应该是这样的:
```
with open('./02百度翻译.html', 'w', encoding='utf-8') as fp:
fp.write(json.dumps(end, ensure_ascii=False))
```
这里只需要传入一个位置参数 `end`,并将序列化后的结果直接写入文件对象 `fp` 即可。
阅读全文