Выводится много цифр после запятой
у меня есть команда
@dp.message_handler(commands=['energydrink', 'энергетик'], chat_type=[types.ChatType.SUPERGROUP, types.ChatType.GROUP])
async def drinkenergy(message: types.Message):
number = random.uniform(1, 5)
number = float('{:.1f}'.format(number))
db.add_energetik(number, message.from_user.id)
total_liters = db.get_totalenergetik(message.from_user.id) # здесь был лишний аргумент
await bot.send_message(message.chat.id, f'@{message.from_user.username}, ты выпил(а) {number} л. энергетика.\nВыпито всего: {total_liters[0]} л.', reply_markup=deletemarkup)
И в db.py есть:
def get_totalenergetik(self, user_id):
with self.connection:
return self.cursor.execute("SELECT `number` FROM `users` WHERE `user_id` = ?;", (user_id, )).fetchall() ### UPD
И бывает случаются такие приколы:

Как это можно решить?
Ещё из-за этого в базе данных такой прикол иногда тоже бывает:

Ответы (1 шт):
Автор решения: insolor
→ Ссылка
Используйте округление до приемлемого количества знаков после запятой при форматировании. Например,
total_liters = [70.6999999999999999]
print(f'Выпито всего: {total_liters[0]:.1f} л.') # .1 - один знак после запятой
выведет Выпито всего: 70.7 л.