python基础之③csv文件读取和写入

                         QQ:3020889729                                                                                 小蔡

什么是CSV

其文件以纯文本形式存储表格数据(数字和文本)。
一般以逗号分隔值~
在这里插入图片描述

引用csv库

如果拥有pandas那就可以直接使用
filename = ‘demo2.csv’
data = pd.read_csv(filename)
也可以按部就班呢,下载安装csv库

import csv
# 包含需要的csv支持方法等

简要说明打开csv文件的一种方式(用with……as……)

最基本的操作,这时候我们文件打开后是要自己关闭的

filename = open('demo2.csv','r',encoding='utf-8')
……
filename.close()

我们换成with……as,就可以实现自动关闭(结束with部分就自动关闭)

with open('demo2.csv','r',encoding='utf-8') as csvf:
	……
#print……之前就会关闭文件
print......

csv文件读取

实例:

with open('demo2.csv','r',encoding='utf-8') as csvf:
    csvrf = csv.reader(csvf) # 获取read权限的csv对象
    # data=next(csvrf)  next只读取一行
    # 要全部读取,可以使用for in,把文件的全部遍历出来,然后打印每一个遍历值
    for i in csvrf:
        print(i)

效果:
在这里插入图片描述

csv文件写入

实例:

with open('demo2.csv','w',encoding='utf-8',newline='') as csvf:
    csvwf = csv.writer(csvf,dialect='excel') # 获取允许写的指定文件对象,并设置默认打开方式为excel
    csvwf.writerow(['A', 'B', 'C', 'D'])# 直接写入会存在空行——应该在打开时添加newline="",否则默认是"\n"
    csvwf.writerow(['1', '3', '5', '8'])# 行写入
    csvwf.writerow(['4', '2', '6', '7'])

效果:每一次写入,各占一行——迭代往下
在这里插入图片描述

pandas读取csv和写入csv

实例:

# 使用pandas库读取文件
import pandas as pd # pandas库
# import csv # csv文件读取写入支持库
filename = 'demo2.csv'  # 用一个变量装取读取的文件名
data = pd.read_csv(filename) # 获取允许读取的csv对象
print(data.head())#会在每行数据中依次读出一个序列号
# head()无参数,默认读取前5行

# 数据写入一个新的csv文件中
data_to = data.head() # 把读取的指定数据保存以下(也是对象哦)
data_to.to_csv('demo3.csv',index=False) # 将数据内容写入指定文件
# index=False不需要序列号

效果:
输出部分:
在这里插入图片描述
处理掉序列号保存的内容:
在这里插入图片描述

发布了92 篇原创文章 · 获赞 99 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_44604887/article/details/104447202