Python discory.py随机发送随机字符串不工作
我有以下代码:Python discory.py随机发送随机字符串不工作,python,random,discord,discord.py,Python,Random,Discord,Discord.py,我有以下代码: import string import random @client.command() async def rng(ctx): await ctx.send(''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(5))) 但由于某些原因,它总是发出错误,即“Command”对象没有属性“choice” 但当我刚跑的时候 >>> import str
import string
import random
@client.command()
async def rng(ctx):
await ctx.send(''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(5)))
但由于某些原因,它总是发出错误,即“Command”对象没有属性“choice”
但当我刚跑的时候
>>> import string
>>> import random
>>> ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(5))
在控制台中,它工作得非常好,并输出我想要的随机字符串。我怎样才能解决这个问题
编辑:在本例中,我意外地使用了
random
作为命令名(现在已对其进行了更新),即使将其更改为其他名称,它仍然无法工作。因为库名和命令名是相同的。您可以做3件事来解决此问题:
,而不是import random as rand
。然后在代码中,您应该将import random
更改为random.choice
rand.choice
- 将命令名称更改为其他名称,如
rand
- 将命令名称更改为
,然后添加\u random
作为命令别名random
即使将命令更改为类似于
rng
import random as rand
@client.command()
async def random(ctx):
await ctx.send(''.join(rand.choice(string.ascii_uppercase + string.digits) for _ in range(5)))
import random
@client.command()
async def rand(ctx):
await ctx.send(''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(5)))
import random
@client.command(aliases=['random'])
async def _random(ctx):
await ctx.send(''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(5)))