我正在尝试处理仅包含 str
的数据集,但 str
的值可以是真实文本或类似于 "1.0"
和 “3.54”
。
我想将所有字符串转换为最佳类型,这意味着 1.0
应转换为 int
,3.54
应转换为float
和其他一切都应该保持 str
。
最好的方法是什么?
最佳答案
让我们试试
def convert(txt):
try:
k = float(txt)
if k%1 ==0:
return int(k)
return k
except ValueError:
return txt
现在我在想的是,输入是不是数字, 无论如何我们可以漂浮它。如果它也可以被 1 整除,那么它就是一个 int,我们就完成了。如果不是,那么它毕竟是一个 float ,我们就完成了。 任何其他情况:我们无能为力,然后让我们返回它
关于python - 将字符串转换为 int、float 或将其保留为字符串,具体取决于最佳选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63361635/