Python 尝试在@event中访问时出现JSON编辑问题,如何解决此问题?

Python 尝试在@event中访问时出现JSON编辑问题,如何解决此问题?,python,python-3.x,async-await,Python,Python 3.x,Async Await,很抱歉,如果我把这部分代码弄错了,但我想我正在学习如何做到这一点。无论如何,我的问题是,我正在尝试访问users.json(在过去工作过)来获取用户硬币,但是我需要根据我假设的@event执行此操作,因为我需要能够访问变量,我将json.load()设置为相等。这是我的错误: Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/discord/client.py", line 307,

很抱歉,如果我把这部分代码弄错了,但我想我正在学习如何做到这一点。无论如何,我的问题是,我正在尝试访问users.json(在过去工作过)来获取用户硬币,但是我需要根据我假设的@event执行此操作,因为我需要能够访问变量,我将json.load()设置为相等。这是我的错误:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/discord/client.py", line 307, in _run_event
    yield from getattr(self, event)(*args, **kwargs)
  File "/home/ubuntu/workspace/main/paeth.py", line 283, in on_reaction_add
    users = json.load(f)
  File "/usr/local/lib/python3.6/json/__init__.py", line 299, in load
    parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw)
  File "/usr/local/lib/python3.6/json/__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.6/json/decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/local/lib/python3.6/json/decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Ignoring exception in on_reaction_add
如果您正在寻找使这一点发生的代码,这里是@client.event for on_reaction_add

@client.event
反应添加时的异步定义(反应,用户):
将open('users.json','r')作为f:
users=json.load(f)
全局队列
打印(str(reaction.emoji))
如果str(reaction.emoji)==“”:
role=discord.utils.get(user.server.roles,name=“CS:GO”)
等待客户端。添加_角色(用户、角色)
打印(“添加角色CS:转到用户:+str(用户))
如果str(reaction.emoji)==“”:
role=discord.utils.get(user.server.roles,name=“Overwatch”)
等待客户端。添加_角色(用户、角色)
打印(“向用户添加角色监视:“+str(用户))
如果str(reaction.emoji)==“”:
role=discord.utils.get(user.server.roles,name=“Apex Legends”)
等待客户端。添加_角色(用户、角色)
打印(“将角色顶点图例添加到用户:”+str(用户))
如果str(reaction.emoji)==“”:
role=discord.utils.get(user.server.roles,name=“职责召唤”)
等待客户端。添加_角色(用户、角色)
打印(“向用户添加角色职责:”+str(用户))
如果str(reaction.emoji)==“”:
role=discord.utils.get(user.server.roles,name=“Fortnite”)
等待客户端。添加_角色(用户、角色)
打印(“将角色添加到用户:“+str(用户))
如果str(reaction.emoji)=”✅":
print(“User”+str(User)+“刚刚加入队列。”)
QUEUE.append(str(用户))
如果str(队列[0])==“PaethBot#1265”:
队列。删除(队列[0])
其他:
等待客户端。发送消息(用户,“您已添加到队列!”)
打印(队列)

如果str(reaction.emoji)=“欢迎使用StackOverflow!你能包括你的JSON吗(如果它很大的话,也可以只是一个示例)?“从这个错误看来,它好像有个错误。”哈利说,当然!我现在就编辑它!嘿@HarryCutts原来它现在是空的?它以前工作过,有没有关于为什么或如何修复的想法?它无法加载,因为它是空的。内容被删除或重写(没有内容)。此外,您应该使用
open('users.json','wt')
wt
模式保存更改。