【问题标题】:Extract floats from list of list of strings从字符串列表中提取浮点数
【发布时间】:2022-09-23 00:30:46
【问题描述】:
[[\'1. (25, 32)\'], [\'2. (24.2, 31.5)\'], [\'3. (22, 34)\'], [\'4. (20.5, 34)\']]

如何将括号之间的内容提取为浮点数。 输出应该是这样的:

[[25, 32], [24.2, 31.5], [22, 34], [20.5, 34]]
  • 欢迎来到堆栈溢出。请阅读How to Ask 并尝试将问题分解为逻辑部分。例如,如果您有只是字符串(25, 32),你能创建想要的结果[25, 32](或者,一个元组,(25, 32))吗?你能从你拥有的实际字符串中得到那个字符串吗?你能从列表中得到实际的字符串吗?您可以对外部列表中的每个元素重复此操作吗?什么部分实际上是问题?请注意,这是不是讨论区.

标签: python list


【解决方案1】:

试试ast.literal_eval

from ast import literal_eval

lst = [["1. (25, 32)"], ["2. (24.2, 31.5)"], ["3. (22, 34)"], ["4. (20.5, 34)"]]

out = [list(literal_eval(s.split(maxsplit=1)[-1])) for (s,) in lst]
print(out)

印刷:

[[25, 32], [24.2, 31.5], [22, 34], [20.5, 34]]

【讨论】:

    猜你喜欢
    • 2020-08-04
    • 2023-03-27
    • 2010-10-30
    • 1970-01-01
    • 2017-06-09
    • 2022-10-16
    • 2011-06-09
    • 2020-12-17
    • 1970-01-01
    相关资源
    最近更新 更多