美文网首页
Python读写文件

Python读写文件

作者: hsihsi | 来源:发表于2020-03-08 22:24 被阅读0次

Python读写txt、csv文件


1.读文件

读入txt文件并转为数字

def loadTxt(filename):
    fp = open(filename)
    data = []
    for lines in fp.readlines():
        '''lines = lines.replace("\n", "").split(" ")
        data.append(lines)'''
        data.append(list(map(int, lines.replace("\n", "").split(" "))))
     fp.close()
     return data

读入csv文件

import csv
def loadDateSet(filename):
    data = []
    with open(filename) as file:
        reader = csv.reader(file)
        for line in reader:
            data.append(line)
    return data 

2.写文件

写txt文件

假设要写入文件的内容为content
写文件的方式有两种:逐行写和一次性全部写入

  • 逐行写
with open('test1.txt','w') as file:
    for line in content:
        file.write(line)
        '''filr.write(line + '\n')''' 
        #write()不能自动分行,需要自己加入换行符
  • 一次性写入
with open('test2.txt','w') as file:
    file.writelines(content)
    #若想不覆盖原文件内容进行写入,将'w'改成'a'即可

写csv文件

假设要写入文件的内容为content

  • 逐行写
import csv
with open('test3.csv','w',newline='') as file: #python3才可使用newline='',python2.7改用'wb'即可
    writer = csv.writer(file)
    for line in content:
        writer.writerow(line)
  • 一次性写入
import csv
with open('test4.csv','w',newline='') as file:
    writer = csv.writer(file)
    writer.writerows(content)
新增
  • 写入csv文件中文乱码问题
    在向csv文件中写入中文时会出现乱码问题,解决方式:设置文件写入属性。
import csv
imort codecs

content = ['你好','中国']

with open('test5.csv','wb') as file:
    file.write(codecs.BOM_UTF8)
    writer = csv.writer(file)
    writer.writerow(content)

注:原链接https://blog.csdn.net/Zx_whu/article/details/52260239是我自己的csdn博客,后续不打算继续使用csdn,故将原有内容迁移过来。

Created at 2016.08.20.

相关文章

网友评论

      本文标题:Python读写文件

      本文链接:https://www.haomeiwen.com/subject/rllsdhtx.html