将字符串转换为数字数据类型并舍入浮点值的函数

拉科尼奇87

我编写了一个将字符串转换为数字数据类型的函数。尽管它可以正常工作,但是我对代码没有印象,需要清理它。

def str_to_numeric(str_list):
        """
        modify elements of list received from file to numeric data
        type.

        """
        temp_list = []
        for item in str_list:
            if type(item) == str:
                try:
                    temp_list.append(int(item))
                except:
                    temp_list.append(round(float(item), 1))
            elif type(item) == float:
                temp_list.append(round(float(item), 1))
            else:
                temp_list.append(item)

        str_list = temp_list
        return str_list

List1 = ['1.0005','1.56666', 1, '1.2333', '1']

List1 = str_to_numeric(List1)
Output: [1.0, 1.6, 1, 1.2, 1]

我正在获得预期的输出,但是我需要一些更改:

  1. 我不想使用temp_list并想在同一列表上执行计算,例如:item = int(item)
  2. 我希望在调用str_to_numeric(List1)而不是List1 = str_to_numeric(List1)时更新列表

可能吗?

纳尔
>>> def str_to_numeric(str_list):
        """
        modify elements of list received from file to numeric data
        type.

        """
        for i,item in enumerate(_ for _ in str_list):
            if type(item) == str:
                try:
                    str_list[i] = int(item)
                except:
                    str_list[i]=round(float(item), 1)
            elif type(item) == float:
                str_list[i] = round(float(item), 1)
            else:
                str_list[i]=item
>>> List1 = ['1.0005','1.56666', 1, '1.2333', '1']
>>> str_to_numeric(List1)
>>> List1
[1.0, 1.6, 1, 1.2, 1]

作品。请记住,如果将列表传递给函数,则它会传递其引用,因此在函数中对其进行更改会更改实际的列表

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将字符串的 varchar 值转换为数据类型 int 时转换失败

将数据类型转换为查询字符串

来自NODEJS的MongoDB插入将值的数据类型从int转换为字符串

转换为数字类型前的舍入字符串

将字符串引用数据类型转换为真正的引用数据类型

如何将json中的数据类型从数字转换为字符串,同时保持所有对象值原样打字稿

将数字数组转换为范围字符串

Java将字符串转换为数字数组

GETDATE() 函数返回错误“将字符串转换为 smalldatetime 数据类型时转换失败。”

MongoDB将字符串类型转换为浮点类型

根据参考范围将数字数据框转换为字符串等效项

如何将数字数据框列转换为格式字符串

将数字字符串转换为具有特定精度的浮点数(不会出现舍入错误)

Pandas数据框:将混合类型的字符串值转换为浮点数,同时跟踪真实的字符串值

将字符串值转换为浮点值

如何将数据帧数据类型转换为字符串?

R数据框:将2的列表转换为简单数字数据类型

将混合数据类型的元组列表转换为所有字符串

将任何原始数据类型转换为字符串的最佳方法是什么

将字符串转换为数据类型以存储在哈希表中

如何将字符串转换为自定义数据类型

将数据类型转换为字符串以显示而不显示“ show”

将字符串转换为 IO[str] 数据类型

将字符串日期转换为日期数据类型

将字符串转换为char和int数据类型

将Import-CSV结果从字符串转换为任意数据类型

R语言将时间数据类型转换为字符串

如何将“frozenset({})”字符串转换为数据类型frozenset?

将 Rust 枚举变体转换为数字数据类型是什么意思?