При создании Telegram-бота на Python столкнулся с проблемой баланса пользователя. Каким образом можно каждому пользователю сделать баланс, или переменную с балансом? Чтобы, к примеру при изменении баланса одного пользователя не менялся баланс второго и т.д. Использую библиотеку pyTelegramBotAPI
Отслеживать
задан 8 янв 2019 в 4:55
1 1 1 бронзовый знак
база данных, не?
8 янв 2019 в 9:31
Сделайте для каждого пользователя отдельный баланс
8 янв 2019 в 18:46
Как пользоваться базой данных?
9 янв 2019 в 4:34
Делать для каждого пользователя баланс — это бессмысленно
9 янв 2019 в 4:35
С Sqlite начните
12 янв 2019 в 23:10
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Если пользователей немного и вы хотите только протестировать функционал, самым простым вариантом будет хранить словарь ( dict ), где ключом будет ник пользователя, а значением — баланс. Словарь можно периодически синхронизировать с диском, например, каждые несколько минут, а также при запуске и выходе.
Для более серьёзных проектов нужно будет работать с базой данных. В Python уже есть библиотеки для работы с SQLite, MySQL и другими системами, попробуйте поискать и выбрать ту, которая больше подходит под вашу задачу.
🔥Как сделать в боте Вывод и пополнение баланса!!!!
Отслеживать
ответ дан 12 янв 2019 в 18:57
decorator-factory decorator-factory
292 1 1 серебряный знак 9 9 бронзовых знаков
- python
- telegram-bot
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Источник: ru.stackoverflow.com
MegaHubTelegram
Перевод представленных материалов на ваш родной язык может быть автоматически осуществлен при помощи переводчика Google. Перейдите по ссылке и выберите нужный язык в заголовке:
https://translate.googleusercontent.com/translate_c?depth=1tl=es#128181; Баланс» в Главном Меню:
⬛ Показ юзеру его индивидуального Баланса
Чтобы отобразить пользователю его баланс, используйте макрос (что такое макрос):
Как вывести баланс в телеграм боте?
Вот что выводиться в самом боте:
- Вопрос задан 20 сент. 2022
- 259 просмотров
7 комментариев
Menu Builder [RU] — 07 — Баланс и Макросы [Конструктор Ботов Телеграм]
Простой 7 комментариев
Пользователь существует в бд?
Dream, да, там при старте бота он автоматически добавляется в бд
helldess, попробуйте в add_user() производить commit вне return
Dream, те self.conn.commit?
Dream, в бд все записывается, но как мне решить проблему с выводом баланса?
Dream, баланс так же выводиться как none
Решения вопроса 0Ответы на вопрос 1
Значит у тебя нет записи в БД для этого юзера. Ты add_user() точно выполнял для него?
Ответ написан 20 сент. 2022
ну посмотри код бд, там есть добавление юзера
если бы баланс был нулевой, то он должен выводить 0, я указал по дефолту в таблице
helldess, а теперь еще раз прочитай мой ответ. Внимательно.
Ты add_user() точно выполнял для него?
В приведённом коде нет вызова add_user().
А дефолт в таблице используется при создании новых записей, а не при отсутствии выбираемых.
Vindicar, не понял, можешь пожалуйста отредачить мой код? А то я уже 3 дня не могу разобраться
Vindicar, вот остальная часть всего кодаИсточник: qna.habr.com