问题描述
@bot.command()
async def test(ctx):
with open("C:\\bot\\cn.txt",'r') as file:
lines = file.readlines()
for line in lines:
values = line.split("|")
for value in values:
dbdc = [dbdc for dbdc in values[2:3] if dbdc == 'DOOMBIRD DOOMCAVE' and list.count[0] < 6]
print(dbdc[0])
现在,它显示不超过值 6 的用户,这样就可以了,但它没有过滤掉它以匹配文本。
我想要做的是读取 txt 文件,将值**[3]** 与文本匹配,即“DOOMBIRD DOOMCAVE”。然后,我希望它检查 [1] 以查看它是否出现了 6 次以上。最后,一旦满足这些条件,我希望它打印结果。不幸的是,它弹出索引超出范围。 [错误信息][1]
文本文件: 声明ID|声明统治者|声明国家|声明联盟|声明联盟ID|声明团队|接收ID|接收统治者|接收国家|接收联盟|接收联盟ID|接收团队|状态|金钱|技术|士兵|日期|原因|援助ID|
Ignoring exception in command test:
Traceback (most recent call last):
File "C:\Users\justi\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\python37\site-packages\discord\ext\commands\core.py",line 85,in wrapped
ret = await coro(*args,**kwargs)
File "c:\bot\eraserhead.py",line 343,in test
print(dbdc[0])
IndexError: list index out of range
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\justi\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\python37\site-packages\discord\ext\commands\bot.py",line 902,in invoke
await ctx.command.invoke(ctx)
File "C:\Users\justi\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\python37\site-packages\discord\ext\commands\core.py",line 864,in invoke
await injected(*ctx.args,**ctx.kwargs)
File "C:\Users\justi\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\python37\site-packages\discord\ext\commands\core.py",line 94,in wrapped
raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: IndexError: list index out of range```
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)