U kunt een Decimaal object naar een tekenreeks converteren:
cursor = db.cursor()
cursor.execute("""select * from table""")
output = []
for row in cursor:
output.append(str(row[4]))
Of naar een dobber:
cursor = db.cursor()
cursor.execute("""select * from table""")
output = []
for row in cursor:
output.append(float(row[4]))
Als u het naar een float converteert, verliest het zijn volledige precisie, dus een waarde als 20.24 wordt 20.239999999999998.
Het casten naar een float zal ook een Exception opleveren als de waarde None
is . Om dat te voorkomen, kunt u een hulpfunctie als deze gebruiken:
def convert_mysql_decimal_to_float(decimal_object):
if (decimal_object == None):
return None
else:
return float(decimal_object)
cell_value = convert_mysql_decimal_to_float(row[4])