python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python将list写入文件读取

利用Python将list列表写入文件并读取的方法汇总

作者:Z小旋

因为实验需要,实现了一下写入txt文件,下面这篇文章主要给大家介绍了关于如何利用Python将list列表写入文件并读取的几种方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

1.writelines()直接写入

l=["A","B","C","D"]
 
f=open("k.txt","w")
 
f.writelines(l)
f.close()

该方法写入直接写入列表元素

2.str转化为字符串写入

l=["A","B","C","D",1,2,3]
 
f=open("k.txt","w")
 
f.write(str(l))
f.close()

该方法会将整个列表转化为字符串并写入,

3.for循环写入

l=["A","B","C","D"]
 
f=open("k.txt","w")
 
for line in l:
    f.write(line+'\n')
f.close()

此方法的好处是,每个元素都是单词写入,可以在写入时对每个元素进行修改,并且可以换行。但注意列表中的数字是没有办法与你所要添加的字符相加的(int类型不能与str相加)

4.使用.join函数修改列表

l=["A","B","C","D"]
str = '\n'
f=open("k.txt","w")
f.write(str.join(l))
f.close()

使用join可以很好的添加你想要添加的字符以及数字,非常的灵活,推荐使用,如果列表中存在数值类型,可以先用str转换之后再进行写入

读取数据

1read   

如果使用read来读取,则返回为字符串类型,并且列表只能为字符串类型(str),不能存在数值类型,如果有数字则会报错

readline与read相同  ,

如果使用readlines来读取,则默认返回为列表类型,并且列表的一个元素为一行元素

这时便可以对数据进行很好的处理

读取列表中的数字,提供一个简单的方法

for line in l:
    if "0" in next or "1" in next:

附:还有写csv文件和excel文件的方式

写csv文件

import csv
import codecs
def data_write_csv(file_name, datas):#file_name为写入CSV文件的路径,datas为要写入数据列表
    file_csv = codecs.open(file_name,'w+','utf-8')#追加
    writer = csv.writer(file_csv, delimiter=' ', quotechar=' ', quoting=csv.QUOTE_MINIMAL)
    for data in datas:
        writer.writerow(data)
    print("保存文件成功,处理结束")

写excel文件

#  将数据写入新文件
def data_write(file_path, datas):
    f = xlwt.Workbook()
    sheet1 = f.add_sheet(u'sheet1',cell_overwrite_ok=True) #创建sheet
    
    #将数据写入第 i 行,第 j 列
    i = 0
    for data in datas:
        for j in range(len(data)):
            sheet1.write(i,j,data[j])
        i = i + 1
        
    f.save(file_path) #保存文件

总结

到此这篇关于利用Python将list列表写入文件并读取的文章就介绍到这了,更多相关Python将list写入文件读取内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文