Python json模块没有属性'dumb'

时间:2019-05-04 16:38:15

标签: python json module e

当前存在问题,在尝试使用json模块中的dumb函数时出现错误。

抛出错误的函数:

def writeToLocalJson(data):
    with open(DOWNLOAD_LIST_FILE, 'w+', encoding='utf-8') as outputFile:
        json.dumb(data, outputFile, sort_keys=True, indent=4)
        outputFile.close()

错误:

Exception has occurred: AttributeError
module 'json' has no attribute 'dumb'
  File "C:\Users\kevod\Documents\Projekte\Git\downloadListe\testing.py", line 3, in <module>
    json.dumb()
  File "C:\Users\kevod\AppData\Local\Programs\Python\Python37\Lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\kevod\AppData\Local\Programs\Python\Python37\Lib\runpy.py", line 96, in _run_module_code
    mod_name, mod_spec, pkg_name, script_name)
  File "C:\Users\kevod\AppData\Local\Programs\Python\Python37\Lib\runpy.py", line 263, in run_path
    pkg_name=pkg_name, script_name=fname)

有趣的是,另一个函数im使用json模块中的load函数,它可以正常工作。 搜索一段时间后,我仅找到解决方案,其中存在另一个名为json.py的文件,该文件未正确导入,但在这里似乎并非如此。 如果我正在运行dir(json),我会得到:

00:'JSONDecodeError'
01:'JSONDecoder'
02:'JSONEncoder'
03:'__all__'
04:'__author__'
05:'__builtins__'
06:'__cached__'
07:'__doc__'
08:'__file__'

运行json.__file__我得到:

C:\\Users\\MYUSER\\AppData\\Local\\Programs\\Python\\Python37\\lib\\json\\__init__.py

1 个答案:

答案 0 :(得分:2)

函数被称为转储,而不是dumB *,这就是我认为的所有问题。因此,如果正确的话,应该是

def writeToLocalJson(data):
    with open(DOWNLOAD_LIST_FILE, 'w+', encoding='utf-8') as outputFile:
        json.dump(data, outputFile, sort_keys=True, indent=4)
        outputFile.close()