Я пишу бота для Discord на Python с помощью библиотеки discord.py
Нужно придумать или подсказать уже существующую реализацию как сделать так чтобы я мог раскидать свой код по разным файлам. Представим ситуацию что у меня есть 2 файла: main.py и func.py
Нужно чтобы:
Подключение и ивенты бота остались в файле main.py
Но чтобы функция hello() находилась в файле func.py
Код ниже это из файла main.py:
import discord
from discord.ext import commands
from config import settings
import sqlite3
# Подключение намерений (Intents)
intents = discord.Intents.all()
bot = commands.Bot(command_prefix=settings['prefix'], intents=intents)
# Подключение базы данных
data_base = sqlite3.connect('data\\discord_db.db', timeout=10)
cursor = data_base.cursor()
@bot.event
async def on_ready():
print('On ready event loading...')
print(f'Discord BOT {bot.user.name} connected')
print(f'Client ({bot.user.name}) id is {bot.user.id}')
for guild in bot.guilds:
print(f'Connected to server, id is: {guild.id}')
for member in guild.members:
cursor.execute(f"SELECT id FROM users where id={member.id}")
if cursor.fetchone() is None:
cursor.execute(
f"INSERT INTO users VALUES ({member.id}, '{member.name}', '<@{member.id}>')")
else:
pass
data_base.commit()
print(f'Server {guild.id} has been processed')
@bot.command()
async def hello(ctx):
author = ctx.message.author
await ctx.send(f'Hello, {author.mention}!')
bot.run(settings['token'])