我将如何检查我的机器人消息是否<2000个字符长度
@commands.command()
async def emojify(self, ctx, *, text):
emojis = []
for s in text.lower():
if s.isdecimal():
num2emo = {'0':'zero', '1':'one', '2':'two',
'3':'three', '4':'four', '5':'five',
'6':'six', '7':'seven', '8':'eight',
'9':'nine'}
emojis.append(f':{num2emo.get(s)}:')
elif s.isalpha():
emojis.append(f':regional_indicator_{s}:')
else:
emojis.append(s)
await ctx.send(''.join(emojis))
此命令将单词转换为不和谐的表情符号(例如 dank memer emojify)
我如何让它在发送之前检查消息字符长度有多长,以便它可以打印错误或继续?
回答
将字符串保存在变量中并使用该len()函数获取字符数
@commands.command()
async def emojify(self, ctx, *, text):
emojis = []
for s in text.lower():
if s.isdecimal():
num2emo = {'0':'zero', '1':'one', '2':'two',
'3':'three', '4':'four', '5':'five',
'6':'six', '7':'seven', '8':'eight',
'9':'nine'}
emojis.append(f':{num2emo.get(s)}:')
elif s.isalpha():
emojis.append(f':regional_indicator_{s}:')
else:
emojis.append(s)
messageToSend = ''.join(emojis)
if len(messageToSend) < 2000:
await ctx.send(messageToSend)
else:
# error-handling