将十进制值的字符串转换为数字而不进行舍入

0.03611642492570208

这样的数字在CSV文件中以字符串形式出现,我希望阅读它们并执行数学运算,但是当我阅读时,它被读为String,当我将其转换为数字形式时,将其四舍五入。


如何在不损失精度的情况下将其转换为数值。


编辑:


 item_id,deal_probability

 6544e41a8817,0.299918385137877

 65b9484d670f,0.09258187813010357

 8bab230b2ecd,0.15371873083249338

 8e348601fefc,0.07208665773638352

 8bd2fe400b89,0.25543690938853253

 c63dbd6c657f,0.05238764253800446

 6d1a410df86e,0.0512983797826358

 e8d3e7922b80,0.009989860172001194

 2bc1ab208462,0.04119998171932098

这是我的csv文件的格式,当我在我的笔记本jupyter读它下的值deal_probability四舍五入至小数点后6位。


预期结果:-我想读取整个csv,而对Deal_probability下的值没有任何更改


呼啦一阵风
浏览 186回答 3
3回答

翻阅古今

是的,您应该使用小数。为了从字符串转换为十进制,您首先要导入十进制,然后将字符串传递给Decimal函数,如下所示from decimal import DecimalmyDecimal = Decimal("0.03611642492570208")然后,您可以像处理任何其他数字类型一样对小数进行运算。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python