4
A
回答
10
單個數字和僅使用兩個元素
>>> a = (0, 1)
>>> a[0] + a[1] * 0.1
0.1
多個位數
>>> from itertools import count
>>> a = (0, 1)
>>> sum(n * 10 ** i for i, n in zip(count(0, -1), a))
0.1
>>> a = (0, 1, 5, 3, 2)
>>> sum(n * 10 ** i for i, n in zip(count(0, -1), a))
0.15320000000000003
使用reduce
(對於P 3.0+你將需要:from functools import reduce
)
>>> a = (0, 1, 5, 3, 2)
>>> reduce(lambda acc, x: acc * 0.1 + x, reversed(a))
0.1532
使用decimal
模塊
>>> from decimal import Decimal
>>> a = (0, 1, 5, 3, 2)
>>> Decimal((0, a, -len(a) + 1))
Decimal('0.1532')
任意兩個數字
>>> a = (0, 1)
>>> float('{0}.{1}'.format(*a))
0.1
個
任何數字
>>> a = (0, 1, 5, 3, 2)
>>> float('{0}.{1}'.format(a[0], ''.join(str(n) for n in a[1:])))
0.1532
可能會有一些浮動點不準確,你可以通過使用Decimal
小號如修復。
>>> sum(Decimal(n) * Decimal(10) ** Decimal(i) for i, n in zip(count(0, -1), a))
Decimal('0.1532')
1
假設你的列表a
的元素是個位數0-9
,您可以用數學:
>>> a[0] + a[1] * 0.1
0.10000000000000001
或轉換爲字符串,串聯和轉換回飄:
>>> float(str(a[0])+'.'+str(a[1]))
0.10000000000000001
0
from math import log
a = (x, y)
a[0] + a[1]/float(10 ** (int(log(a[1], 10)) + 1))
將評價爲
x.y
相關問題
- 1. 轉換數字數組轉換成字符串單元陣列
- 2. 字符數組到字符串轉換
- 3. 字符數組到浮點數轉換
- 4. 轉換數字節數組
- 5. 注意:數組到字符串轉換將數組轉換爲字符串
- 6. 轉換字符串數組爲數字
- 7. 轉換數組元素從字符串到整數
- 8. 將數組元素從字符串轉換爲數字
- 9. 轉換數組字符串數組
- 10. 字符串到int數組轉換c#
- 11. Laravel ORM數組到字符串轉換
- 12. php soapclient數組到字符串轉換
- 13. Laravel數組到字符串轉換
- 14. 字節數組到圖像轉換
- 15. PHP MYSQLi:數組到字符串轉換
- 16. 數組到字符串轉換
- 17. 轉換`UInt16`到字節數組
- 18. Symfony2數組到字符串轉換
- 19. Rails:CSV數組到字符串(轉換)
- 20. PHP數組到字符串轉換
- 21. 轉換字節數組到UIImage
- 22. 注意:數組到字符串轉換
- 23. 轉換數組到字符串
- 24. C#轉換數組到字符串和
- 25. 轉換UnmanagedMemoryStream到字節數組
- 26. 從MimeMessage到字節數組的轉換
- 27. 數組到字符串轉換Codeignater_3
- 28. ReadTimeout轉換字節數組到流
- 29. 轉換的HttpResponse到字節數組
- 30. 關聯數組到字符串轉換
您可以顯示其他示例和輸出嗎?你真的想將零件轉換爲字符串,與點連接,並轉換爲浮動? – pepr 2012-07-16 10:41:09