Discord.py 尝试删除频道时重写“.delete()”命令出错
Discord.py rewrite when trying to delete a channel the ".delete()" command gives an error
我已经在 discord 机器人上工作了一段时间,但我遇到了一个问题。
创建一个频道(Ticket)就好了,但是当我想删除某个频道时,即使我做了一个 if 语句,它仍然会关闭所有频道:
if message.content.lower().startswith('!close'):
close = message.channel.id
if close == '521992786187255818' or close == '525730667607228426' or close ==... (etc):
await message.channel.send("This command is only allowed in a ticket channel!")
elif close != '521992786187255818' or close != '525730667607228426' or close !=...(etc):
await message.channel.delete(reason='Ticket Closed')
我已经尝试了所有我能想到的方法:将我不想让它关闭的频道制作成一个列表。
所以问题是:我希望 !close 命令只关闭我没有列出的频道。但是当我在列出的频道(我在 if 语句中输入的频道)中尝试时,它仍然关闭它。
希望能得到解答!
提前致谢:)
在重写分支中,all ids are integers, not strings。将您的代码更改为
non_ticket_channels = [521992786187255818, 525730667607228426, ...]
if close in non_ticket_channels:
...
else:
...
我已经在 discord 机器人上工作了一段时间,但我遇到了一个问题。 创建一个频道(Ticket)就好了,但是当我想删除某个频道时,即使我做了一个 if 语句,它仍然会关闭所有频道:
if message.content.lower().startswith('!close'):
close = message.channel.id
if close == '521992786187255818' or close == '525730667607228426' or close ==... (etc):
await message.channel.send("This command is only allowed in a ticket channel!")
elif close != '521992786187255818' or close != '525730667607228426' or close !=...(etc):
await message.channel.delete(reason='Ticket Closed')
我已经尝试了所有我能想到的方法:将我不想让它关闭的频道制作成一个列表。
所以问题是:我希望 !close 命令只关闭我没有列出的频道。但是当我在列出的频道(我在 if 语句中输入的频道)中尝试时,它仍然关闭它。
希望能得到解答! 提前致谢:)
在重写分支中,all ids are integers, not strings。将您的代码更改为
non_ticket_channels = [521992786187255818, 525730667607228426, ...]
if close in non_ticket_channels:
...
else:
...