我想从我的discord机器人发送一个.txt的随机线,我正在使用nextcord,但如果discord.py工作得更好,我可以使用它。让我知道,如果有人可以帮助。我还没有尝试太多,因为我是相当新的Python,但我想我会给予它一个尝试。我尝试使用随机和.json,但它去可怕的哈哈。
.txt
nextcord
discord.py
.json
gopyfrb31#
我不知道nextcord是如何工作的,但是有一种方法可以从任何python文件中的.txt文件中获得随机行。首先,确保你的.txt文件和python文件在同一个文件夹中。其次,我们应该导入random,因为我们将在这个方法中使用random.choice。然后,你可以创建一个函数,从一个文本文件中随机选择一行,如下所示:
random.choice
def random_line(fname): lines = open(fname).read().splitlines() return random.choice(lines)
只要我们想从一个.txt文件中得到一个随机行,我们就可以调用这个函数。现在我们已经有了从.txt文件中获取随机行的方法,我们可以在discord.py中实现这个方法。
import random import discord from discord.ext import commands FILE_NAME = "" YOUR_TOKEN = "" intents = discord.Intents.all() bot = commands.Bot(command_prefix=">", intents=intents) #The function that gets the random line def random_line(fname): lines = open(fname).read().splitlines() return random.choice(lines) #Making the comand @bot.command() async def randomline(ctx): await ctx.send(random_line(FILE_NAME)) bot.run(YOUR_TOKEN)
请记住在Developer Portal中启用Intent如果你想使用nextcord,就试着用我给你的函数来做这个命令。我希望这能有所帮助,如果有任何问题,就让我知道。
1条答案
按热度按时间gopyfrb31#
我不知道nextcord是如何工作的,但是有一种方法可以从任何python文件中的
.txt
文件中获得随机行。首先,确保你的
.txt
文件和python文件在同一个文件夹中。其次,我们应该导入random,因为我们将在这个方法中使用random.choice
。然后,你可以创建一个函数,从一个文本文件中随机选择一行,如下所示:只要我们想从一个
.txt
文件中得到一个随机行,我们就可以调用这个函数。现在我们已经有了从
.txt
文件中获取随机行的方法,我们可以在discord.py
中实现这个方法。请记住在Developer Portal中启用Intent
如果你想使用
nextcord
,就试着用我给你的函数来做这个命令。我希望这能有所帮助,如果有任何问题,就让我知道。