あなたがの形で何かを持っているなら[1, 2, 3, 4]
、その場合あなたは使うことができますast
:
In [1]: import ast
In [2]: with open('lists.txt', 'rb') as f:
...: lists = f.readlines()
...:
...:
In [3]: list_container = [ast.literal_eval(line.strip()) for line in lists]
In [4]: list_container
Out[4]: [[1, 2, 3], [[1, 2, 3], [4, 5, 6]]]
この場合、lists.txt
次のようになります。
[1, 2, 3]
[[1, 2, 3], [4, 5, 6]]
ただし、ファイルが上記のように表示される場合は、を使用できますが、次のようなexec
ものは常に注意して使用する必要があります。exec
eval
In [2]: with open('test.txt', 'rb') as f:
...: contents = f.read()
...:
...:
In [3]: exec(contents)
In [4]: mylist
Out[4]: [1, 2, 3, 4]
In [5]: myotherlist
Out[5]: [[1, 3, 4, 5], [3, 5, 3, 6]]
In [6]: print contents
mylist = [
1,
2,
3,
4]
myotherlist = [
[1, 3, 4, 5],
[3, 5, 3, 6]
]