gpt4 book ai didi

python - 将字符串列表转换为数字列表而不指定 int 或 float

转载 作者:行者123 更新时间:2023-12-01 01:53:00 26 4
gpt4 key购买 nike

将字符串列表转换为数字列表以便那些看起来像整数的转换为 int 而其他转换为 float 的最简单方法是什么?

示例:

list = ['1' , '2.2' , '3']

一种转换方法是定义它们是整数还是 float :

list = [float(item) for item in list]

但在这个例子中,显然 int 也会转换为 float。

一种方法是检查变量类型并逐案转换。有没有更简单的方法?

<小时/>

编辑:

类似的问题How can I convert a string to either int or float with priority of int有点难以理解问题是什么,接受的答案并不涵盖我的情况。

另一个类似的问题How do I parse a string to float or int in Python是如何转换为 int 或 float 的基本问题,我的问题比这更进一步。

换句话说,我会再次问:如何将字符串(或字符串列表)转换为数字(或数字列表),无论什么类型,保留其类型,无论是 int、float(还是复数)。通常,转换是从字符串到某种类型的数字,通常是 int 或 float。有没有一种简单明了的方法将字符串转换为任何类型的数字?

最佳答案

使用ast模块

例如:

import ast
l = ['1' , '2.2' , '3']
print([ast.literal_eval(i) for i in l])

输出:

[1, 2.2, 3]

关于python - 将字符串列表转换为数字列表而不指定 int 或 float,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50550107/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com