Python 无法解码JSON对象,但输入为JSON格式

Python 无法解码JSON对象,但输入为JSON格式,python,json,Python,Json,下面是我用来获取数据的代码: def read_phantom(): try: with open(phantom_file, "r") as f: return json.load(f) except: return {"status": False} 下面是文件中的原始数据:{“status”:true,“angle”:-0.0,“speed”:0.0,“time”:1556521858546.0} 但是,我随机得到一个错误:无法解码任何JSON对象 你

下面是我用来获取数据的代码:

def read_phantom():
  try:
    with open(phantom_file, "r") as f:
      return json.load(f)
  except:
    return {"status": False}
下面是文件中的原始数据:
{“status”:true,“angle”:-0.0,“speed”:0.0,“time”:1556521858546.0}

但是,我随机得到一个错误:
无法解码任何JSON对象


你知道是什么原因导致的吗?

随机发生的情况如何(请说明具体情况),你也可以使用这两个代码来读取文件内容

代码1

    import json
    def read_phantom():
      try:
            with open('file_path/phantom_file') as json_file:  
                data = json.load(json_file)
            return (data)
      except:
        return {"status": False}

    record = read_phantom()
    print (record)
代码2

    def read_phantom():
      try:
        content = []
        f = open('phantom_file','r')
        for line in f:
            cont = line.rstrip("\n")
            content.append(cont)
        return (content)
      except:
        return {"status": False}    

    record = read_phantom()
    print (record)    

我同时定期从另一个Python文件写入
json
文件,在读取内容之前立即使用
f.seek(0)
行大大减少了收到的错误数量。不知道为什么,但从那以后,我似乎对解析文件内容没有任何问题。

您发布的数据在python 2.7上对我有效。可能会检查输入文件?可能重复您所说的“随机”是什么意思?错误不是每次都发生吗?如果是的话,在哪个频率?随机获得错误是很奇怪的。计算机是一件愚蠢的事情:面对相同的输入,它应该总是给出相同的输出。对可能发生的情况的胡乱猜测:读取错误的文件、在完全写入文件之前读取文件、写入时出错。为了确保这一点,您应该使用
try:。。。Exception…:…
json.load
周围,并在Exception子句中转储文件名(或更好的路径)和文件内容您确定文件是否存在吗?您可以添加
导入操作系统;os.path.exists(path)
检查以避免文件路径问题或其他问题。根据
json.load
文档,您应该传递一个类似文件的对象