序号 | 说明 | 结果 |
---|---|---|
实验一 | 写文件、读文件都带上newline='' | a\r\nb\r\n |
实验二 | 写文件带上参数newline='',读文件不带参数 | a\nb\n |
实验三 | 写文件不带参数,读文件带参数newline='' | a\r\r\nb\r\r\n |
实验四 | 写文件、读文件都不带参数newline=''(默认) | a\n\nb\n\n |
我在读写csv文件时,发现csv两行数据之间里会多出一行空白,后来查到资料看到上图,明白csv文件两行数据之间默认会有两个\n\n,额,写文件的时候加上newLine=“”,就只会有一个\n,那就正常了。
demo:
import csv # url = '/Users/xuele/PycharmProjects/flaskProject/files/test.csv' url = "D:/pythonPro/demo/file/firstCSV.csv2" def readData(): csvFile = csv.reader(open(url, 'r')) for row in csvFile: print(row) def writeData(): csvFile = open(url, 'w+', newline="") try: writer = csv.writer(csvFile) list = [["a", "b", "c"], ["aa", "bb", "cc"]] writer.writerows(list) finally: csvFile.close() if __name__ == '__main__': writeData() # readData()