Я использую psycopg2 для запросов к PostgreSQL базе данных.
import psycopg2
import psycopg2.extras
DB_CONNECTION = {
'host': os.getenv('PG_HOST'),
'database': os.getenv('PG_DB_NAME'),
'user': os.getenv('PG_USER'),
'password': os.getenv('PG_PASSWORD')
}
connection = psycopg2.connect(**DB_CONNECTION)
connection.autocommit = True
cursor = connection.cursor(cursor_factory = psycopg2.extras.RealDictCursor)
# amount column type is numeric in table
query = 'SELECT userid, amount FROM some_table WHERE userid = %(userid)s'
cursor.execute(query, {'userid': 1234})
rows = cursor.fetchall()
print(rows[0]['amount']) # This is value is object of decimal.Decimal
rows[0]['amount']
является объектом класса decimal.Decimal
. Есть ли простой и понятный способ получить это значение как float
? Я не хочу бросать это в float вручную float(rows[0]['amount'])
.