python - 检查项目是否在列表中 discord python
问题描述
我有一个我无法弄清楚的问题。我在 python 中做一个不和谐的机器人。我有一个 ghost_list.py (单独的文件),它具有通常的嫌疑人 =[500 个数字,此处分隔,]
from ghost_list import usual_suspects
@bot.command()
async def isidonlist(ctx, arg):
if arg in usual_suspects:
nameget = opener.open(f"{api_url}{theme}/{arg}?selections=&key=
{api_key}").read()
namegetdata = json.loads(nameget)
ghost_name = (namegetdata['name'])
await ctx.send(f"{ghost_name} is on the list of usual suspects.")
else:
await ctx.send(f"{arg} is NOT on the list of usual suspects.")
现在的问题是我总是得到 else 结果。这让我想知道这段代码有什么问题。我输入了我知道在列表中的数字,但它始终显示不在列表中。当我在其他使用 for i in range(len(usual_suspects)): 的命令中使用此列表时,它工作正常。
我应该以不同的方式解决这个问题,还是只是我不知道的一些错误?谢谢你!
解决方案
由于根据提供的信息很难确定,这里有一个可能的情况。arg
可能作为string
. 如果您说的列表中int
有整数,请确保将其转换为第一个。usual suspects
修改您的代码,如下所示:int(arg)
推荐阅读
- javascript - 我可以随机回复消息吗?(不和谐.js)
- apache-zookeeper - 编译 ZooKeeper 源代码缺少数据和 proto 包
- google-kubernetes-engine - 用于服务模型预测的 Google Kubernetes Engine vs Vertex AI(AI Platform Unified)
- python - 从列表中获取每个项目以检查它是否在密码中,但没有 for 循环
- javascript - 防止在表单字段Javascript上自动输入
- javascript - 使用 Event Target 在控制台中返回特定数据
- c++ - 试图通过指针传递来修改函数中的堆栈,打印顶部元素在函数内部和外部显示不同的结果
- swift - 按钮操作后更新和排序列表
- r - R 在写入文本文件和控制台(标准输出)之间切换
- codeigniter - 如何在 Foreach Codeiginiter 中只选择一个数据重复项