我工作的一個代碼,並有我在的形式獲取數據:在Python與數精度浮點數格式滯留小數
k=[{'item_id': '43381702', 'length': {'_exp': -2, '_is_special': False, '_int': '0', '_sign': 0}, 'height': {'_exp': -2, '_is_special': False, '_int': '0', '_sign': 0}, 'width': {'_exp': -2, '_is_special': False, '_int': '0', '_sign': 0}, 'unitweight': {'_exp': -3, '_is_special': False, '_int': '3000', '_sign': 0}, 'quantity': 1}]
而且據預計,當我寫
float(k[0]['unitweight'])
它應該被轉換成浮點數。但它是給予
TypeError: float() argument must be a string or a number
如預期。我很困惑,因爲數據的格式與python十進制模塊中實現的形式相同。有沒有什麼辦法(單線)我可以通過哪些方式將數據轉換爲浮點數?
'is_special'不是'Decimal'的屬性 – jamylak
我認爲它是一個數字的屬性。查看[提示](http://www.itmaybeahack.com/homepage/books/nonprog/html/p13_modules/p13_c03_decimal.html#rounding-known-as-quantization)關於attribue錯誤和此[鏈接](http:/ /mail.python.org/pipermail/python-checkins/2007-November/063656.html)也顯示了python代碼中的修改。 – tusharmakkar08