读取python文件的一部分

时间:2020-10-23 16:11:25

标签: python python-3.x

在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个不同的嵌套矩阵,可以将它们分别存储到不同的变量中。

2 个答案:

答案 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的内容,这可能是不安全的

相关问题