为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Python中转换`str.split()`的元素?

如何在Python中转换`str.split()`的元素?

皈依舞 2023-06-27 13:33:09
我有以下内容:[line.split(' ') for line in [        line.rstrip() for line in file.readlines()]]它返回字符串列表的列表。我知道我可以执行以下操作将其转换为整数列表的列表:    for row in tree:        row[:] = map(int, row[:])可以在处理行时内联完成吗?一些示例数据:5973 4152 40 0926 53 06 3410 51 87 86 81
查看完整描述

1 回答

?
尚方宝剑之说

TA贡献1788条经验 获得超4个赞

你可以使用


data = """

59

73 41

52 40 09

26 53 06 34

10 51 87 86 81

"""


result = [[int(x) for x in line.split()] for line in data.split("\n") if line]

print(result)

哪个产量


[[59], [73, 41], [52, 40, 9], [26, 53, 6, 34], [10, 51, 87, 86, 81]]

请注意,这仅适用于只有整数的情况。

要进行一些错误管理,您可以使用:


data = """

59 some junk here

73 41

52 40 09

26 53 06 34

10 51 87 86 81

"""


def makeint(line):

    for x in line.split():

        try:

            yield int(x)

        except ValueError:

            pass


result = [[x for x in makeint(line)] for line in data.split("\n") if line]

print(result)


查看完整回答
反对 回复 2023-06-27
  • 1 回答
  • 0 关注
  • 85 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信