Использование SQLite и Python 3.1, я хочу отображать данные валюты в таблице HTML через. шаблон, который принимает курсор в качестве параметра. Следовательно, все значения валюты должны иметь 2 десятичных знака, но SQLite сохраняет их как тип с плавающей точкой (даже если структура содержит десятичные числа :-(), поэтому некоторые из них должны быть преобразованы перед отображением (например, я хочу, чтобы 12.1 отображалось как 12.10).Замена значения во всех строках курсора
код идет что-то вроде этого (упрощенный для иллюстрации) ...
import sqlite3
con = sqlite3.connect("mydb")
con.row_factory = sqlite3.Row
cur = con.cursor()
cur.execute("select order_no, amount from orders where cust_id=123")
for row in cur:
row['amount'] = format(row['amount'],'%.2f')
последняя команда бросает ошибку «# builtins.TypeError: объект„sqlite3.Row“не поддерживает назначение пункта»
Как могу ли я решить проблему, при которой значения объекта строки не могут быть изменены? Могу ли я преобразовать курсор в список словарей (один для eac h строка, например. [{'order_no': 1, 'amount': 12.1}, {'order_no': 2, 'amount': 6.32}, ...]), затем отформатируйте значение «сумма» для каждого элемента? Если да, то как я могу это сделать?
Есть ли лучшие решения для достижения моей цели? Любая помощь будет оценена по достоинству.
ТИА, Алан
Спасибо Alex - это хорошее опрятное решение. С уважением. –