Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法打开json文件json-ValueError:预期的对象或值_Python_Json_Pandas - Fatal编程技术网

Python 无法打开json文件json-ValueError:预期的对象或值

Python 无法打开json文件json-ValueError:预期的对象或值,python,json,pandas,Python,Json,Pandas,我将以下简单的json保存在一个文件中,作为记事本文件t.json [{"a": 1, "b": 2, "c": 3}, {"a": 4, "b": 5, "c": 6}, {"a": 7, "b": 8, "c": 9}] 我正在尝试使用 ValueError Traceback (most recent call last) <ipython-input-236-487720f2328b> in <module

我将以下简单的json保存在一个文件中,作为记事本文件
t.json

[{"a": 1, "b": 2, "c": 3},
{"a": 4, "b": 5, "c": 6},
{"a": 7, "b": 8, "c": 9}]
我正在尝试使用

ValueError                                Traceback (most recent call last)
<ipython-input-236-487720f2328b> in <module>()
----> 1 data = pd.read_json('t.json')

~\Anaconda3\lib\site-packages\pandas\io\json\json.py in read_json(path_or_buf, orient, typ, dtype, convert_axes, convert_dates, keep_default_dates, numpy, precise_float, date_unit, encoding, lines, chunksize, compression)
    420         return json_reader
    421
--> 422     result = json_reader.read()
    423     if should_close:
    424         try:

~\Anaconda3\lib\site-packages\pandas\io\json\json.py in read(self)
    527             )
    528         else:
--> 529             obj = self._get_object_parser(self.data)
    530         self.close()
    531         return obj

~\Anaconda3\lib\site-packages\pandas\io\json\json.py in _get_object_parser(self, json)
    544         obj = None
    545         if typ == 'frame':
--> 546             obj = FrameParser(json, **kwargs).parse()
    547
    548         if typ == 'series' or obj is None:

~\Anaconda3\lib\site-packages\pandas\io\json\json.py in parse(self)
    636
    637         else:
--> 638             self._parse_no_numpy()
    639
    640         if self.obj is None:

~\Anaconda3\lib\site-packages\pandas\io\json\json.py in _parse_no_numpy(self)
    851         if orient == "columns":
    852             self.obj = DataFrame(
--> 853                 loads(json, precise_float=self.precise_float), dtype=None)
    854         elif orient == "split":
    855             decoded = {str(k): v for k, v in compat.iteritems(

ValueError: Expected object or value
ValueError回溯(最近一次调用)
在()
---->1 data=pd.read_json('t.json'))
只读json格式的~\Anaconda3\lib\site packages\pandas\io\json\json.py(路径、方向、类型、数据类型、转换轴、转换日期、保留默认日期、numpy、精确浮点、日期单位、编码、行、块大小、压缩)
420返回json_读取器
421
-->422 result=json_reader.read()
423如果应关闭:
424试试:
读取中的~\Anaconda3\lib\site packages\pandas\io\json\json.py(self)
527             )
528其他:
-->529 obj=self.\u get\u object\u解析器(self.data)
530自我关闭()
531返回obj
~\Anaconda3\lib\site packages\pandas\io\json\json.py在\u get\u object\u解析器中(self,json)
544 obj=无
545如果类型=‘帧’:
-->546 obj=FrameParser(json,**kwargs.parse()
547
548如果类型==‘系列’或obj为无:
解析中的~\Anaconda3\lib\site packages\pandas\io\json\json.py(self)
636
637其他:
-->638 self.\u parse\u no\u numpy()
639
640如果self.obj为无:
~\Anaconda3\lib\site packages\pandas\io\json\json.py in\u parse\u no\u numpy(self)
851如果方向=“列”:
852 self.obj=数据帧(
-->853次加载(json,precise\u float=self.precise\u float),dtype=None)
854 elif orient==“分割”:
855解码={str(k):v代表k,v在compat.iteritems中(
ValueError:预期的对象或值

我已尝试按照中的建议创建绝对路径,但它也会产生一个值错误。有人能帮忙吗?

这可能是pandas模块的错误。您使用的是什么版本? 考虑更新。

之后,您可以尝试以下操作:

data  = pd.read_json('t.json', lines=False)

希望有帮助

谢谢你的建议。奇怪的是,当我运行“conda update panda”时,我发现一个错误“conda”未被识别为内部或外部命令、可操作程序或批处理文件”这是否表明需要更新anaconda?我想windows找不到conda工具。你必须指定路径。请检查。但是,请考虑r使用pip()安装pandas并同时使用参数lines=False可以解决问题吗?我已经更新了conda。创建了一个asbolute路径,如下所示:path=os.path.abspath(“DESKTOP\python work jan”),然后运行此data=pd.read_json(path+'\t.json',lines=False)以获取错误read_json()得到了一个意想不到的关键字参数“PATH”,您可以将T.JSON文件移到您的工作文件夹中,或者直接在Read jJSON中指定路径而不使用OS,PATH模块吗?如果您需要指定绝对路径,请考虑使用Tabe= OS.Posi.Noin(OS.Posi.Noin(OS.Envion [用户配置文件])、“桌面”)。获取桌面和路径的路径。请常规加入以避免在合并路径时出错。路径可能重复