错误:NameError:未定义名称“ json”

时间:2020-01-26 03:00:42

标签: python python-3.x

from json import *
import pandas as pd
import numpy as np
import os

fp=open("data1.json","r")
data=json.loads(fp)
print(data)

s=pd.Series(data,index=[1,2])
print(s)

错误

enter image description here

1 个答案:

答案 0 :(得分:1)

这与您导入json模块的方式有关。通过使用*表示法,您可以将所有内容导入json模块。以这种方式导入模块时,无需指定函数来自的模块。

导入时,有两个选项:导入模块(使用模块时,请参考模块名称),或导入模块中的所有内容(使用模块时,引用模块名称)。

顺便说一句,通常建议使用第一种方法(import json)。 (参考Why is “import *” bad? What exactly does “import *” import?)。

还要注意with语句,以确保在读取完成后正确关闭文件。

# Option 1: (recommended)
import json

with open("data1.json", "w") as f:
    data = json.loads(f.read())
print(data)
# OR Option 2: (not recommended, but shown to illustrate differences in usage)

from json import *
with open("data1.json", "w") as f:
    data = loads(f.read())
print(data)