“固定”;类型错误:'_io.TextIOWrapper';对象不可下标";在python脚本中

“固定”;类型错误:'_io.TextIOWrapper';对象不可下标";在python脚本中,python,json,discord,discord.py,discord.py-rewrite,Python,Json,Discord,Discord.py,Discord.py Rewrite,我试图在config.json中为我正在处理的bot存储一些数据,但每次尝试运行它时都会收到相同的错误 我正在运行Python 3.7.3,这是重写的最新版本。我尝试过在config.json文件中四处移动,但没有任何效果。我可能错过了一些非常明显的东西,但我不知道是什么 在引发异常的情况下: 以open(“config.json”,“r”)作为填充: 尝试: CONFIG=json.load(infle) _=填充[“标记”] _=填充[“所有者”] 除了(KeyError、FileNotFo

我试图在config.json中为我正在处理的bot存储一些数据,但每次尝试运行它时都会收到相同的错误

我正在运行Python 3.7.3,这是重写的最新版本。我尝试过在config.json文件中四处移动,但没有任何效果。我可能错过了一些非常明显的东西,但我不知道是什么

在引发异常的情况下:

以open(“config.json”,“r”)作为填充:
尝试:
CONFIG=json.load(infle)
_=填充[“标记”]
_=填充[“所有者”]
除了(KeyError、FileNotFoundError):
raise环境错误(
“您的config.json文件丢失或不完整。请检查您的config.json并确保其包含键'token'和'owner_id'”
)
预期结果:代码从文件中提取令牌所有者,并继续运行bot

实际结果:Bot无法启动。回溯输出-

  File "/Users/prismarine/Desktop/Project_Prismarine/core.py", line 11, in <module>
    _ = infile["token"]
TypeError: '_io.TextIOWrapper' object is not subscriptable
文件“/Users/prismarine/Desktop/Project_prismarine/core.py”,第11行,在
_=填充[“标记”]
TypeError:“\u io.TextIOWrapper”对象不可订阅

您试图将文件句柄作为字典而不是存储在
CONFIG
中的JSON字典调用。相反,请尝试:

with open("config.json", "r") as infile:
    try:
        CONFIG = json.load(infile)
        token = CONFIG["token"]
        owner = CONFIG["owner"]

    except (KeyError, FileNotFoundError):
        raise EnvironmentError(
            "Your config.json file is either missing, or incomplete. Check your config.json and ensure it has the keys 'token' and 'owner_id'"
        )

还请注意,如果下划线不在任何地方使用,则通常将其用作变量名,并且下划线将分配给
CONFIG['token']
,然后在您的情况下立即重新分配给
CONFIG['owner']
。如果您打算以后使用它们,我给了它们一些新的唯一变量名。

您将json保存在
CONFIG
中……似乎您应该在其中查找令牌和所有者。