Задать вопрос
@Sadons

Как импортировать нужную функцию из другого файла .py?

Пишу асинхронного бота, возникла необходимость смены асинхронного aiosqlite на асинхронный postgresql(asyncpg)
Возникла проблема, мне нужно импортировать в данном случае sql внутри функции create_bot_database()
async def create_bot_database():
    sql = await asyncpg.connect(
        host=HOST,
        user=USER,
        password=PASSWORD,
        database=DB_NAME
    )

есть ли такая возможность как то вытянуть с функции данную переменную?
Или же нужно заново прописывать коннект в каждом файле, так как вся структура "проекта" разбита на несколько функций
Посредством импорта я могу вытянуть оттуда только саму функцию - create_bot_database()
А мне нужно переменную внутри функции - sql
from database.create_db import create_bot_database

async def startup(message: types.Message):  # Здороваемся
    await sql.execute(f'SELECT id FROM users WHERE id = "{message.from_user.id}"')  # Проверяем есть ли в базе
    if await sql.fetchone() is None:
        await bot.send_message(message.from_user.id,
                               "Добро пожаловать!",
                               "Перед тем, как начать работу нужно согласиться с правилами:",
                               parse_mode="html", reply_markup=kb_reg)
        await registration(message)
    else:
        await bot.send_message(message.from_user.id, "Вы уже зарегистрированы!", reply_markup=kb_main)

Это функция регистрации, мне нужно тут вызвать как раз функцию sql, но как мне её импортировать?
Возможно не понятно обьяснил, извините заранее
  • Вопрос задан
  • 244 просмотра
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
@pASdfsa
import "название файла"
"название файла".test()
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@leonidvoroninthebest
import 'название файла'
или from 'название файла' import 'нужная его часть'
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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