Можете да конвертирате десетичен обект в низ:
cursor = db.cursor()
cursor.execute("""select * from table""")
output = []
for row in cursor:
output.append(str(row[4]))
Или към float:
cursor = db.cursor()
cursor.execute("""select * from table""")
output = []
for row in cursor:
output.append(float(row[4]))
Преобразуването му в float ще го накара да загуби пълната си точност, така че стойност като 20,24 ще стане 20,239999999999998.
Също така, прехвърлянето му към float ще предизвика изключение, ако стойността е None
. За да избегнете това, можете да използвате помощна функция като тази:
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])