Я создаю бота Discord Ghostpinger на Python

#python

#питон

Вопрос:

Часть, которая распечатывает каждое сообщение, работает, и она может правильно просматривать сообщения, но никогда не отправляет ответ (! ghostping не работает). Я совсем новичок в Фитоне, так что, возможно, я просто тупой, спасибо, если вы это проверите, хотя

 import time import discord    TOKEN = ('don't token log my bot pls the token is here btw')  client = discord.Client()  @client.event async def on_ready():  print(f'{client.user} has connected to Discord!')     @client.event async def on_message(message):  full_message = str(message.content)  user_message = str(message.content).split('!ghostping')[0]  channel = str(message.channel.name)  username = str(message.author).split('#')[0]  print(f'{username}: {str(message.content)} ({channel})')   if message.author == client.user:  return   if message.channel.name == 'teszt':  if str(message.content.lower).startswith('!ghostping'):  await message.channel.send(f'@{user_message}') #this part doesn't work  time.sleep(1)  await ctx.message.delete()  return   client.run(TOKEN)  

Ответ №1:

Ваша проблема здесь:

 user_message = str(message.content).split('!ghostping')[0]  

а потом вот:

 if str(message.content.lower).startswith('!ghostping'):  

Это await message.channel.send(f'@{user_message}') работает само по себе. Но вы не достигнете этого. Зацени это:

 gt;gt;gt; message = '!ghostping' gt;gt;gt; user_messages = str(message).split('!ghostping')[0] gt;gt;gt; user_messages '' gt;gt;gt; user_messages = str(message).split('!') gt;gt;gt; user_messages ['', 'ghostping'] gt;gt;gt; message = '!ghostping 123' gt;gt;gt; user_messages = str(message).split('!ghostping') gt;gt;gt; user_messages ['', ' 123']  

Вы пытались сделать if '' заявление. bool('') это Ложь.