问题:
在python实际运用中,我们经常需要将变量保存在txt文件中,并且希望未来能读取他们。这里我们将自定义两个函数,来简化这个操作。
解决:
-
1.保存入txt文件
-
输入:content(列表变量),filename(文件名,如'1.txt'),mode(读写方式,默认mode = 'a').
-
输出:在当前目录下创建一个名为filename文件,并且将列表的每个元素逐一写入文件(加入换行符).
-
def text_save(content,filename,mode='a'):
-
# Try to save a list variable in txt file.
-
file = open(filename,mode)
-
for i in range(len(content)):
-
file.write(str(content[i])+'\n')
-
file.close()
-
2.读取出txt文件
-
输入:filename(文件名,如'1.txt').
-
输出:函数返回一个列表,里面包含每行的内容,并且自动屏蔽换行符(如果没有找到该文件名,返回空列表).
-
def text_read(filename):
-
# Try to read a txt file and return a list.Return [] if there was a mistake.
-
try:
-
file = open(filename,'r')
-
except IOError:
-
error = []
-
return error
-
content = file.readlines()
-
-
for i in range(len(content)):
-
content[i] = content[i][:len(content[i])-1]
-
-
file.close()
-
return content
实际使用:
运行
-
test_text = ['just','for','test']
-
text_save(test_text,'1.txt')
可以得到一个名为1.txt的文本文档,里面内容为
-
just
-
for
-
test
现在我们尝试读取该文件
-
test_content = text_read('1.txt')
-
print test_content
得到结果为
['just', 'for', 'test']