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

我有以下内容:


[line.split(' ') for line in [

        line.rstrip() for line in file.readlines()]]

它返回字符串列表的列表。我知道我可以执行以下操作将其转换为整数列表的列表:


    for row in tree:

        row[:] = map(int, row[:])

可以在处理行时内联完成吗?


一些示例数据:


59

73 41

52 40 09

26 53 06 34

10 51 87 86 81


皈依舞
浏览 90回答 1
1回答

尚方宝剑之说

你可以使用data = """5973 4152 40 0926 53 06 3410 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 here73 4152 40 0926 53 06 3410 51 87 86 81"""def makeint(line):    for x in line.split():        try:            yield int(x)        except ValueError:            passresult = [[x for x in makeint(line)] for line in data.split("\n") if line]print(result)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python