python 文件格式为 txt 转换成 csv 格式

1  txt 文件的读取

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)app

参数 file 是文件名称,如‘file.txt’ ;mode 是对文件打开的模式,其余参数通常不用。函数

函数 open 的参数解释:编码

在open函数中默认为只读。其余模式还有:spa

        w:以写方式打开指针

        a:以追加模式打开excel

        r+:以读写模式打开code

        w+:以读写模式打卡对象

        rb:以二进制读模式打开blog

        wb:以二进制写模式打开字符串

        ab:以二进制追加模式打开

        rb+:以二进制读写模式打开

        wb+:以二进制读写模式打开

        ab+:以二进制追加模式打开

open 对象的经常使用方法:

read():读取字节到字符串中

readline():打开文件的一行,包括行结束符

readline():打开文件,读取全部行

write():将字符串写入文件,写入对象为字符串

writelines():将列表写入文件,对象是列表。

seek():偏移量

tell():返回当前文件指针的位置

2 csv 的读写

须要模块 csv ,读写函数:

读取函数

reader(csvfile, dialect='excel', **fmtparams)

参数说明:

csvfile,必须是支持迭代(Iterator)的对象,能够是文件(file)对象或者列表(list)对象,若是是文件对象,打开时须要加"b"标志参数。

dialect,编码风格,默认为excel的风格,也就是用逗号(,)分隔,dialect方式也支持自定义,经过调用register_dialect方法来注册,下文会提到。

fmtparam,格式化参数,用来覆盖以前dialect对象指定的编码风格。

 

写函数

writer(csvfile, dialect='excel', **fmtparams)

参数意义同上。

3 例子

reader = open('data.txt')
list_data = reader.readlines()
columns = list_data [0].split()
list = []
for i in list_data [1:]:
    list.append(i.split())
with open("test.csv","wb") as csvfile:
    writer = csv.writer(csvfile)
    #先写入columns_name
    writer.writerow(columns)
    #写入多行用writerows
    writer.writerows(list)

对写入数据的解析:

首先open()函数打开当前路径下的名字为'test.csv'的文件,若是不存在这个文件,则建立它,返回csvfile文件对象。

csv.writer(csvfile)返回writer对象myWriter。

writerow()方法是一行一行写入,writerows方法是一次写入多行。

注意:若是文件'test.csv'事先存在,调用writer函数会先清空原文件中的文本,再执行writerow/writerows方法。

相关文章
相关标签/搜索