Python 读取存储在文本文件中的元组

Python 读取存储在文本文件中的元组,python,list,tuples,text-files,Python,List,Tuples,Text Files,我正在寻找一种在运行后永久存储python程序创建的元组的方法。因此,为了简单起见,我决定将数据写入一个文本文件(或者是否有更优雅但更简单的解决方案可供推荐?) 因此,执行此操作的命令如下所示: import codecs txt = codecs.open("data.txt", "w", encoding="utf-8") . . . data = set1, set2, set3 print >> txt, data 生成一个如下所示的文本文件 (u'

我正在寻找一种在运行后永久存储python程序创建的元组的方法。因此,为了简单起见,我决定将数据写入一个文本文件(或者是否有更优雅但更简单的解决方案可供推荐?)

因此,执行此操作的命令如下所示:

import codecs
txt = codecs.open("data.txt", "w", encoding="utf-8")
    .
    .
    .
data = set1, set2, set3
print >> txt, data
生成一个如下所示的文本文件

(u'name1', 'file1', 'date1')
(u'name2', 'file2', 'date2')
    .
    .
    .
在“file1”、“file2”等示例中,访问data.txt仅显示所有第二个数据集的正确方法是什么

我把for循环、read()和readline()搞得一团糟,但从来没有得到文件中第二项的简单输出。。。我希望有人能在那里帮助我

提前多谢

考虑使用并为您完成所有工作。如果您不介意文件采用特定于Python的格式,那么这是一个合理的选择

也考虑使用存储数据。此格式可供其他程序读取,并且可查询(即,您可以仅检索文件名字段而不是整个记录)

否则,读取直接文本转储的传统解决方案是逐行读取文件,解析或计算文本以将其转换回Python对象,然后提取感兴趣的字段:

for line in codecs.open("data.txt", "r", encoding="utf-8"):
    tup = ast.literal_eval(line)
    print tup[1]

考虑使用以原样保存变量。

由于这是表格数据,您也可以使用
csv
。这是一个有用的建议,但不能回答他关于如何读取已创建文件的问题。这仍然是一个答案。是的,但我同意你在编辑中写的代码,所以我不会写一个副本。这很公平。也许这两个答案会清楚地表明,重新设计特殊用途的文件格式不是一条可行的道路:-)我计划将这些数据存储得尽可能简单,并且功能齐全,以便以后可以通过python或php进行访问和处理。以前我曾使用mysql来实现这一点,但发现一种方法可以让繁重的应用程序完成这些简单的任务。。。。我只是出于测试目的使用了txt文件方法,可能会研究pickle模块。。。然而,昨天有人也提到了货架。。。我不想在最后重新发明文件格式。。。因此,我将研究python在类似于数据库的小规模基础上提供了什么,非常感谢!谢谢你的推荐。我知道我决定使用python的sqlie3模块,希望一切顺利:)