将Python的字符串列表转换为浮点数,其中列表还包含单词

发布于 2021-01-29 15:00:49

考虑一下Python中既包含字母字符串又包含数字字符串的列表

a = ['Total', '1', '4', '5', '2']

如何将其转换为混合值列表

b = ['Total', 1.0, 4.0, 5.0, 2.0]

请注意,通常我们可能不知道字母字符串在列表中的位置,即我们可能有

a = ['Total', '1', '4', 'Next', '2']
关注者
0
被浏览
101
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您可以使用生成器函数和异常处理:

    >>> def func(seq):
            for x in seq:
                try:
                    yield float(x)
                except ValueError:
                    yield x
    ...             
    >>> a = ['Total', '1', '4', '5', '2']
    >>> list(func(a))
    ['Total', 1.0, 4.0, 5.0, 2.0]
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看