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方法。

相關文章
相關標籤/搜索