日期和时间与python不一致的错误

时间:2018-08-25 00:15:23

标签: discord.py

@client.event
async def on message(message):
    if message.content.upper().startswith('!now')
    userID = message.author.id
    await client.send_message(message.channel, '<@&s>' (time.asctime() % '(userID)')

我遇到语法错误 尝试在其他类型时为discord bot发出命令!现在它将响应其日期和时间

2 个答案:

答案 0 :(得分:1)

我不确定您是否正确复制了代码,但似乎您丢失了:

  • 函数名称(def on_message(message):)下划线

  • if语句结尾的冒号和正确的缩进 (if message.content.upper().startswith('!now'):下的

正如Mehvix所指出的,您还正在将转换为大写的字符串与小写的字符串进行比较(切换为if message.content.startswith('!now'):

我还建议您使用python的更新格式功能将await行更改为类似await client.send_message(message.channel, f'{time.asctime()} -> {message.author.id}')

这是最终结果

@client.event
async def on_message(message):
  if message.content.startswith('!now'):
    await client.send_message(message.channel, f'{time.asctime()} -> {message.author.id}')

答案 1 :(得分:0)

.upper意味着“!now”必须大写为“!NOW”