我正在使用Python 2.7.14。
执行此操作
# -*- coding: utf-8 -*-
from __future__ import (absolute_import, division, print_function,
unicode_literals)
import os
import json
def main():
path = os.path.join(os.path.dirname(__file__), 'data-creation.json')
with open(path, 'r+') as f:
json_data = json.load(f)
json.dump(json_data, path)
if __name__=='__main__':
main()
它在AttributeError: 'unicode' object has no attribute 'write'
行中说json.dump(json_data, path)
。
nkf -g data-creation.json
输出ASCII
,但是出了什么问题?
我认为这是字符代码的问题。
答案 0 :(得分:1)
json.dump
需要一个类似文件的对象,该对象支持write()
作为第二个参数,而不是路径。