美文网首页Python自动流程化高效率工作
python 文件格式为 txt 转换成 csv 格式

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

作者: 我爱学python | 来源:发表于2019-08-14 16:32 被阅读24次

    txt 文件的读取

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

    参数 file 是文件名称,如‘file.txt’ ;mode 是对文件打开的模式,其他参数一般不用。

    函数 open 的参数解释:

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

    ​ w:以写方式打开

    ​ a:以追加模式打开

    ​ r+:以读写模式打开

    ​ w+:以读写模式打卡

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

    ​ wb:以二进制写模式打开

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

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

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

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

    open 对象的常用方法:

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

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

    readline():打开文件,读取所有行

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

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

    seek():偏移量

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

    csv 的读写

    需要模块 csv ,读写函数:

    读取函数

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

    参数说明:

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

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

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

    写函数

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

    参数意义同上。

    例子

    '''
    遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006 
    寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
    '''
    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方法。

    相关文章

      网友评论

        本文标题:python 文件格式为 txt 转换成 csv 格式

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