如何使用python将SI单位转换为数字

时间:2017-01-09 15:44:52

标签: python numbers integer

我想转换字母附带的数字,并根据每个字母指定的值进行转换。就像一个数字1M应该读作1000000而一个数字1K应该读作1000.是否有一些简单的方法来完成这个?

2 个答案:

答案 0 :(得分:1)

将最后一个字符转换为值,例如M - > 1000000,k - > 1000。 使用值Multipy并为可能的解析错误添加一些代码。

(我故意不在这里添加代码让你试一试)。

答案 1 :(得分:1)

一个简单的方法是使用字典存储每个转换将使用的零的数量:

>>> number = {
...     'K': 3,
...     'M': 6
... }
>>> 
>>> var = '5M'
>>> int(var[0] + ('0' * number[var[1]]))
5000000
>>> var = '2K'
>>> int(var[0] + ('0' * number[var[1]]))
2000
>>> 

根据项目的规模和复杂程度,此解决方案可能会或可能不会缩放。