【发布时间】:2019-04-23 20:45:06
【问题描述】:
我正在尝试将类似于“8,191.55 MB”的字符串转换为“8191.55” 这样我就可以将它除以 1024 得到 GigaBytes。
我正在尝试的代码给了我“819155”而不是“8191.55”
代码:
TotalRAM = dfHandler['Total Physical Memory'].values[0]
TotalRAM = (int)(''.join(i for i in TotalRAM if i.isdigit()))
【问题讨论】:
-
您的 join 语句正在去掉小数位。您可能需要考虑用“”替换所有非数字字符,然后进行浮点转换。此外,您想使用浮点数,而不是整数。 Int 将四舍五入到最接近的整数并去掉小数位。
-
在这种情况下您可以绕过它,但通常您可能需要查看正则表达式:docs.python.org/3/library/re.html
标签: python python-3.x string dataframe floating-point