【发布时间】:2020-06-30 14:11:41
【问题描述】:
我必须调用一个 API,它有时会以字符串格式返回我的数值,"288" 而不是 288,或 "0.1523" 而不是 0.1513。有时,我会得到正确的数值,39。
如何使函数将其格式化为正确的值?这意味着:
- 如果我得到
"288"将其转换为整数:288。 - 如果我得到
"0.323"将其转换为浮点数:0.323。 - 如果我得到
288,请保持原样(它已经是一个整数)。 - 如果我得到
0.323,请保持原样(它已经是浮点数了)。
这是我的尝试。问题是这也将我所有的浮点数转换为整数,我不想要这个。有人可以帮我吗?
def parse_value(value):
try:
value = int(value)
except ValueError:
try:
value = float(value)
except ValueError:
pass
提前致谢
【问题讨论】:
-
为什么要区分 float 和 int?对于大多数用例,
float(value)就足够了。
标签: python python-3.x string integer