python对csv文件和txt文件的读取和写入

一:读取txt文件

1.1、文件的处理过程

一般的文件处理过程

(1)、打开文件:open()函数

(2)、读取/写入文件:read()、readline()、readlines()、write()等。

(3)、对读取的数据进行处理

(4)、关闭文件:close()。

对文件操作之前需要用open()函数打开文件,打开之后将返回一个文件对象(file,对象)。open函数的语法格式如下:

file_object = open(file_name[,access_mode = "r",buffering = -1])

其中file_object为打开的对象;file_name是包含要打开的文件名路径(绝对路径,或是相对路径)的字符串,包含路径名及扩展名。其中一个可选的参数access_mode是打开模式,默认值为“r“,通常有r,w,a,几种模式,表示只读、只写和追加;另一个可选的参数buffering表示带打开文件的缓冲模式。

方法 描述
read([size]) 读取文件所有内容,返回字符串类型,参数size表示读取的数量,以byte为单位,可以省略
readline([size]) 读取文件一行的内容,以字符串形式返回,若定义了size,则读出一行的一部分
readlines([size]) 读取所有的行到列表里面[line1,line2......linen](文件每一行是list的一个成员),参数size表示读取内容的长度

读取txt文件

所读取的txt文件内容如下并且放在相应的目录下:

#有这样一位诗人。他的诗,让世界上无数人,走出消极,甚至治愈了一个名族的痛。
#他就是,诗人之王泰戈尔。
#下面是泰戈尔的一些经典语录
1、生如夏花之绚烂,死如秋叶之静美
2、眼睛为她下着雨,心却为她打着伞,这就是爱情。
-
-
3、世界与痛吻我,我却报之以歌。
4、###
5、当你为错过太阳而哭泣的时候,你也要再错过群星了。
#
-
6、我们把世界看错,反说它欺骗了我们。
-
7、不要着急,最好的总会在最不经意的时候出现

方法一:

f = open("data//泰戈尔的诗a.txt",mode = 'r',encoding='utf-8')
content = f.read()
print(content)
f.close()

python对csv文件和txt文件的读取和写入_第1张图片

 方法二:

f = open("data//泰戈尔的诗a.txt",mode = 'r',encoding='utf-8')
content = f.readlines()
print(content)
f.close()

python对csv文件和txt文件的读取和写入_第2张图片

 跳过文件中的注释内容和缺失值。

def skip_header(f):
    line = f.readline()
    while line.startswith('#'):
        line = f.readline()
    return line
def process_file(f):
    line = skip_header(f).strip()
    print(line)
    for line in f:
        if line.startswith("-") or line.startswith("#"):
            line = f.readline()
        line = line.strip()
        print(line)
input_file = open("data//泰戈尔的诗a.txt",mode = 'r',encoding='utf-8')
process_file(input_file)
input_file.close()

python对csv文件和txt文件的读取和写入_第3张图片

 

def skip_header(f):
    line = f.readline()
    while line.startswith('#'):
        line = f.readline()
    return line
def process_file(f):
    line = skip_header(f).strip()
    print(line)
    for line in f:
        while line.startswith("-") or line.startswith("#"):
            line = f.readline()
        line = line.strip()
        print(line)
input_file = open("data//泰戈尔的诗a.txt",mode = 'r',encoding='utf-8')
process_file(input_file)
input_file.close()

python对csv文件和txt文件的读取和写入_第4张图片

 二:csv文件和写入:

python内置了csv模块,import csv之后就可以读取csv文件了。

读取csv文件

import csv
with open("students.csv","r") as f:
    reader = csv.reader(f)
    rows = [row for row in reader]
for item in rows:
    print(item)

文件的写入:

import csv
content = [['0','hanmeimei','23','81'],
            ['1','mayi','18','99'],
            ['2','jack','21','89']]
f = open("test.csv","w",newline = '')
#如果不加newline = '',就会出现空行
content_out = csv.writer(f) 
#生成writer对象存储器
for con in content:
    content_out.writerow(con)
f.close()
            

你可能感兴趣的:(python,jupyter)