将 2.0000000000000000000e+00 类型数转换为 int?
Posted
技术标签:
【中文标题】将 2.0000000000000000000e+00 类型数转换为 int?【英文标题】:Converting a 2.000000000000000000e+00 type number to int? 【发布时间】:2019-05-16 19:46:37 【问题描述】:如何转换这种类型的数字: 2.000000000000000000e+00 到一个 int(值为 2)?
谢谢!
def read_labels_from_file(file_name):
labels_file = open(file_name, "r")
labels = []
for line in labels_file:
line_sepetated = line.split("\n")
labels.append(int(line_sepetated[0]))
return labels
我希望将整数 2 附加到标签,但得到: ValueError: int() 以 10 为底的无效文字:'2.000000000000000000e+00'
【问题讨论】:
Converting number in scientific notation to int的可能重复 【参考方案1】:2.000000000000000000e+00
是一个有效的浮点字面量,因此您可以先将其转换为 float
,然后再将其转换为 int
:
labels.append(int(float(line_sepetated[0])))
【讨论】:
以上是关于将 2.0000000000000000000e+00 类型数转换为 int?的主要内容,如果未能解决你的问题,请参考以下文章
为啥我们需要将 e.target.name 放在方括号 [] 中? [复制]