我制作了一个获取股票价格的 python 机器人,但我如何制作它以便参数不使用空格?

时间:2021-06-20 00:00:08

标签: python discord discord.py

@client.command()
async def stockprice(ctx, stock):
    await ctx.send(stock + ' price: ' + getStockPrice(stock))

我制作了一个获取股票价格的 python 机器人,但我如何制作它以便参数不使用#a 空格?

示例:

!stockprice bitcoin => !stockprice.bitcoin

1 个答案:

答案 0 :(得分:2)

我不知道我是否理解你的问题。


如果你想从字符串的两边删除空格/制表符/输入,那么你只需要

stock = stock.strip() 

如果您想将命令用作带点的单个字符串 - 如 !stockprice.bitcoin - 那么您必须使用 on_message(message) 将其转换为 !stockprice bitcoin 并使用 process_commands()发送给@client.command()

或多或少是这样的

@client.event
def on_message(msg):

    if msg.author.bot:
        return

    if msg.content.startswith('!stockprice.'):
       msg.content = msg.content.replace('!stockprice.', '!stockprice ')
    
    await process_commands(msg)