Python操作CSV格式文件的方法大全

目录

  • (一)CSV格式文件
  • (二)CSV库操作csv格式文本
  • (三)pandas库操作CSV文件
  • 总结

(一)CSV格式文件 1.说明
CSV是一种以逗号分隔数值的文件类型,在数据库或电子表格中,常见的导入导出文件格式就是CSV格式,CSV格式存储数据通常以纯文本的方式存数数据表。

(二)CSV库操作csv格式文本 操作一下表格数据:
Python操作CSV格式文件的方法大全
文章图片

1.读取表头的2中方式
#方式一import csvwith open("D:\\test.csv") as f:reader = csv.reader(f)rows=[row for row inreader]print(rows[0])----------#方式二import csvwith open("D:\\test.csv") as f:#1.创建阅读器对象reader = csv.reader(f)#2.读取文件第一行数据head_row=next(reader)print(head_row)

结果演示:['姓名', '年龄', '职业', '家庭地址', '工资']
2.读取文件某一列数据
#1.获取文件某一列数据import csvwith open("D:\\test.csv") as f:reader = csv.reader(f)column=[row[0] for row inreader]print(column)

结果演示:['姓名', '张三', '李四', '王五', 'Kaina']
3.向csv文件中写入数据
#1.向csv文件中写入数据import csvwith open("D:\\test.csv",'a') as f:row=['曹操','23','学生','黑龙江','5000']write=csv.writer(f)write.writerow(row)print("写入完毕!")

结果演示:
Python操作CSV格式文件的方法大全
文章图片

4.获取文件头及其索引
import csvwith open("D:\\test.csv") as f:#1.创建阅读器对象reader = csv.reader(f)#2.读取文件第一行数据head_row=next(reader)print(head_row)#4.获取文件头及其索引for index,column_header in enumerate(head_row):print(index,column_header)

结果演示:
['姓名', '年龄', '职业', '家庭地址', '工资']
0 姓名
1 年龄
2 职业
3 家庭地址
4 工资
5.获取某列的最大值
# ['姓名', '年龄', '职业', '家庭地址', '工资']import csvwith open("D:\\test.csv") as f:reader = csv.reader(f)header_row=next(reader)# print(header_row)salary=[]for row in reader:#把第五列数据保存到列表salary中salary.append(int(row[4]))print(salary)print("员工最高工资为:"+str(max(salary)))

结果演示:员工最高工资为:10000
6.复制CSV格式文件
原文件test.csv
Python操作CSV格式文件的方法大全
文章图片

import csvf=open('test.csv')#1.newline=''消除空格行aim_file=open('Aim.csv','w',newline='')write=csv.writer(aim_file)reader=csv.reader(f)rows=[row for row in reader]#2.遍历rows列表for row in rows:#3.把每一行写到Aim.csv中write.writerow(row)

01.未添加关键字参数newline=' '的结果:
Python操作CSV格式文件的方法大全
文章图片

02添加关键字参数newline=' '的Aim.csv文件的内容:
Python操作CSV格式文件的方法大全
文章图片


(三)pandas库操作CSV文件 csv文件内容:
Python操作CSV格式文件的方法大全
文章图片

1.安装pandas库:pip install pandas
2.读取csv文件所有数据
import pandas as pdpath= 'D:\\test.csv'with open(path)as file:data=https://www.it610.com/article/pd.read_csv(file)print(data)

结果演示:
姓名年龄职业家庭地址工资
0张三22厨师北京市6000
1李四26摄影师湖南长沙8000
2王五28程序员深圳10000
3Kaina22学生黑龙江2000
4曹操28销售上海6000
3.describe()方法数据统计
import pandas as pdpath= 'D:\\test.csv'with open(path)as file:data=https://www.it610.com/article/pd.read_csv(file)#了解更多describe()知识,ctr+鼠标左键print(data.describe())

结果演示:
年龄工资
count5.000005.000000
mean25.200006400.000000
std3.033152966.479395
min22.000002000.000000
25%22.000006000.000000
50%26.000006000.000000
75%28.000008000.000000
max28.0000010000.000000
4.读取文件前几行数据
import pandas as pdpath= 'D:\\test.csv'with open(path)as file:data=https://www.it610.com/article/pd.read_csv(file)#读取前2行数据# head_datas = data.head(0)head_datas=data.head(2)print(head_datas)

结果演示:
姓名年龄职业家庭地址工资
0张三22厨师北京市6000
1李四26摄影师湖南长沙8000
5.读取某一行所有数据
import pandas as pdpath= 'D:\\test.csv'with open(path)as file:data=https://www.it610.com/article/pd.read_csv(file)#读取第一行所有数据print(data.ix[0,])

结果演示:
姓名张三
年龄22
职业厨师
家庭地址北京市
工资6000
6.读取某几行的数据
import pandas as pdpath= 'D:\\test.csv'with open(path)as file:data=https://www.it610.com/article/pd.read_csv(file)#读取第一行、第二行、第四行的所有数据print(data.ix[[0,1,3],:])

结果演示:
姓名年龄职业家庭地址工资
0张三22厨师北京市6000
1李四26摄影师湖南长沙8000
3Kaina22学生黑龙江2000
7.读取所有行和列数据
import pandas as pdpath= 'D:\\test.csv'with open(path)as file:data=https://www.it610.com/article/pd.read_csv(file)#读取所有行和列数据print(data.ix[:,:])

结果演示:
姓名年龄职业家庭地址工资
0张三22厨师北京市6000
1李四26摄影师湖南长沙8000
2王五28程序员深圳10000
3Kaina22学生黑龙江2000
4曹操28销售上海6000
8.读取某一列的所有行数据
import pandas as pdpath= 'D:\\test.csv'with open(path)as file:data=https://www.it610.com/article/pd.read_csv(file)# print(data.ix[:, 4])print(data.ix[:,'工资'])

结果演示:
06000
18000
210000
32000
46000
Name: 工资, dtype: int64
9.读取某几列的某几行
import pandas as pdpath= 'D:\\test.csv'with open(path)as file:data=https://www.it610.com/article/pd.read_csv(file)print(data.ix[[0,1,3],['姓名','职业','工资']])

结果演示:
姓名职业工资
0张三厨师6000
1李四摄影师8000
3Kaina学生2000
10.读取某一行和某一列对应的数据
import pandas as pdpath= 'D:\\test.csv'with open(path)as file:data=https://www.it610.com/article/pd.read_csv(file)#读取第三行的第三列print("职业---"+data.ix[2,2])

结果演示:职业---程序员
11.CSV数据的导入导出(复制CSV文件)
读方式01:
import pandas as pd#1.读入数据data=https://www.it610.com/article/pd.read_csv(file)

写出数据02:
import pandas as pd#1.写出数据,目标文件是Aim.csvdata.to_csv('Aim.csv')

其他:
01.读取网络数据:import pandas as pd data_url = "https://raw.githubusercontent.com/mwaskom/seaborn-data/master/tips.csv"#填写url读取df = pd.read_csv(data_url)----------02.读取excel文件数据import pandas as pd data = https://www.it610.com/article/pd.read_excel(filepath)

实例演示:
1.test.csv原文件内容
Python操作CSV格式文件的方法大全
文章图片

2.现在把test.csv中的内容复制到Aim.csv中
import pandas as pdfile=open('test.csv')#1.读取file中的数据data=https://www.it610.com/article/pd.read_csv(file)#2.把data写到目标文件Aim.csv中data.to_csv('Aim.csv')print(data)

结果演示:
Python操作CSV格式文件的方法大全
文章图片

注:pandas模块处理Excel文件和处理CSV文件差不多!
参考文档:https://docs.python.org/3.6/library/csv.html

总结 【Python操作CSV格式文件的方法大全】到此这篇关于Python操作CSV格式文件的文章就介绍到这了,更多相关Python操作CSV文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    推荐阅读