kinetic_e = open('t.dat.txt', 'r')
print kinetic_e
p_word = re.compile(r'\S+')
for line in kinetic_e:
m = re.findall(p_word, line)
print m
有问题的文件:http://sirius.chem.vt.edu/~crawdad/programming/project3/h2o_sto3g/t.dat ...前两列的数字 1-7 是我想要的矩阵维度。第 1 列和第 2 列指定第 3 列中数字的行号/列号。(示例:第一行是 row1、col1,然后是 row2、col1 等)
我的问题:我的解决方法是否正确?我可以使用正则表达式来解决这个问题吗?我无法找到资源来创建包含所有数据的 7x7 矩阵
不,错误的路径。这里不需要正则表达式。初始化一个 7x7 二维数组。遍历行,拆分它们,从前两列中提取 i,j 索引,并使用第三个字段设置二维数组的值:
matrix = [[0 for i in range(7)] for j in range(7)]
with open('t.dat.txt', 'r') as source:
for line in source:
i, j, value = line.split()
i, j = int(i), int(j)
matrix[i - 1][j - 1] = float(value)
我是一名优秀的程序员,十分优秀!