在python中,我想创建一个将读取python文件一部分的代码。 例如,我要读取的文件有
matrix1 =[[[1, 1, 1], [0, 0, 0], [1, 0, 0]],
[[1, 0, 1], [0, 0, 0], [1, 0, 0]]]
matrix2 = [[[1, 0, 1], [0, 0, 0], [1, 0, 0]],
[[1, 0, 1], [1, 0, 1], [1, 0, 0]]]
matrix3 = [[[1, 1, 1], [1, 1, 0], [1, 0, 0]],
[[1, 0, 1], [1, 0, 1], [1, 0, 0]]]
....
每组矩阵均由空白行分隔。 我只想读取矩阵1的内容,然后将其存储在变量中。然后,我只想读取矩阵2的内容并将其存储在变量中。矩阵3也是一样。
我的代码-
open('file.py')
matrix1 = read'file.py')
我的代码无法正常工作,因为现在它可以读取整个文件,而不仅仅是矩阵。 我该怎么做,以便我的输出是3个不同的嵌套矩阵,可以将它们分别存储到不同的变量中。
答案 0 :(得分:3)
您可以这样做
from file import matrix1
# or
from file import * as data
# and then access the data like this:
data.matrix1
如果文件已经是python文件,请不要尝试手动手动打开文件,然后解析数据。这也适用于python文件中的其他内容,例如类和函数。
答案 1 :(得分:0)
将代码存储在示例文件file.py
中,您可以执行以下操作
exec(open('file.py').read())
print(matrix1)
[[[1, 1, 1], [0, 0, 0], [1, 0, 0]], [[1, 0, 1], [0, 0, 0], [1, 0, 0]]]
请注意,如果用户有权访问file.py的内容,这可能是不安全的