首页 > 解决方案 > 如何使用 Python 读取文本文件并将其存储在二维列表中?

问题描述

我正在尝试从现有的文本文件中读取数据,然后我想将其打印为三角形。

distance_matrix.txt

[0]

[1, 0]

[13, 12, 0]

[17, 16, 10, 0]

[16, 15, 8, 1, 0]

[13, 12, 4, 5, 4, 0]

[12, 11, 6, 11, 10, 6, 0]
file1 = open("distance_matrix.txt", "r")
   contents1 = file1.readlines()
for i in contents1.split(", "):
     numbers = re.split(', |\[|\]', i)
     numbers.remove('')
     numbers.remove('\n')
     for j in contents1[i]:
          numbers.append(contents1[i][j])
          print(contents1[i][j])

但这不起作用!

总之,我在这里要做的是从文本文件中读取每一行,然后拆分每个数字并将其放入矩阵中。

标签: pythonlistfilemultidimensional-arrayreadfile

解决方案


用于json从字符串中解析列表。

import json
filename = "distance_matrix.txt"
f = open(filename,"r")
lines=f.readlines()

result_matrix = []
for line in lines:
    result_matrix.append(json.loads(line))

print(result_matrix)
#[[0], [1, 0], [13, 12, 0], [17, 16, 10, 0], [16, 15, 8, 1, 0], [13, 12, 4, 5, 4, 0], [12, 11, 6, 11, 10, 6, 0]]

推荐阅读