Задать вопрос
@Linegrite
Изучаю Linux...

Как разбить большой код на файлы?

У меня есть вк бот, на VkBottle. Там все очень нагромождено, можно ли, как то вынести хендлер с функцией в отдельный файл?

К примеру, вот есть три команды для бота, можно-ли их как то вынести в три разных файла?
Мой код
bot.on.chat_message(text="!пи")
async def wrapper(ans: Message):
	p = str(math.pi * (1 + 1 - 1))
	r = p.replace(".", ",")
	await ans("Число пи = {0}".format(r))

@bot.on.chat_message(text="!син <num>")
async def wrapper(ans: Message, num):
	if num.isdigit():
		sinus = str(math.sin(int(num)))
		rad = str(math.degrees(math.sin(int(num))))
		deg = str(math.sin(int(num)))
		answerR = rad.replace(".", ",")
		answerD = deg.replace(".", ",")
		await ans("Синус числа {0}: \n Градусы: {1}\n Радианы: {2}".format(num, answerD, answerR))
	else:
		await ans("&#10006;&#65039; Ошибка Пип-Пип-Пип")

@bot.on.chat_message(text="!кос <num>")
async def wrapper(ans: Message, num):
	if num.isdigit():
		rad = str(math.degrees(math.cos(int(num))))
		deg = str(math.cos(int(num)))
		answerR = rad.replace(".", ",")
		answerD = deg.replace(".", ",")
		await ans("Косинус числа {0}: \n Градусы: {1}\n Радианы: {2}".format(num, answerD, answerR))
	else:
		await ans("&#10006;&#65039; Ошибка Пип-Пип-Пип")
  • Вопрос задан
  • 248 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@Linegrite Автор вопроса
Изучаю Linux...
Нашёл ответ в самой же библиотеке. У VkBottle, есть так называемые Blueprints, которые 2 строками когда позволяют разделять бота на модули.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@c00re
Можно создать новые python файлы с хендлерами, положить их в одну директорию и потом черезimport <назв. файла>
импортить хендлеры
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы