@client.command()
async def stockprice(ctx, stock):
await ctx.send(stock + ' price: ' + getStockPrice(stock))
我制作了一个获取股票价格的 python 机器人,但我如何制作它以便参数不使用#a 空格?
示例:
!stockprice bitcoin => !stockprice.bitcoin
答案 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)