假设我有一个由以下列表理解生成的元组列表:
foo = [(x**2, x*2) for x in xrange(10)]
如果我再写
print foo
我得到如下所示的输出:
[(0, 0), (1, 2), (4, 4), (9, 6), (16, 8), (25, 10), (36, 12), (49, 14), (64, 16), (81, 18)]
假设我之前已将此输出写入一个文件foo.txt
,并想再次将此输出作为元组列表读回 Python。请注意,这是一个玩具示例,因为我显然可以重写列表推导,但在我的实际用例中,我进行了一些昂贵的计算来生成元组的原始列表,我宁愿不重复计算。
有没有办法在不使用正则表达式或其他标准字符串解析方法手动解析的情况下做到这一点?