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


Posted in Python onJuly 15, 2021

(一)CSV格式文件

1.说明

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

 

(二)CSV库操作csv格式文本

操作一下表格数据:

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

1.读取表头的2中方式

#方式一
import csv
with open("D:\\test.csv") as f:
    reader = csv.reader(f)
    rows=[row for row in  reader]
    print(rows[0])


----------
#方式二
import csv
with open("D:\\test.csv") as f:
    #1.创建阅读器对象
    reader = csv.reader(f)
    #2.读取文件第一行数据
    head_row=next(reader)
    print(head_row)

结果演示:['姓名', '年龄', '职业', '家庭地址', '工资']

2.读取文件某一列数据

#1.获取文件某一列数据
import csv
with open("D:\\test.csv") as f:
    reader = csv.reader(f)
    column=[row[0] for row in  reader]
    print(column)

结果演示:['姓名', '张三', '李四', '王五', 'Kaina']

3.向csv文件中写入数据

#1.向csv文件中写入数据
import csv
with open("D:\\test.csv",'a') as f:
     row=['曹操','23','学生','黑龙江','5000']
     write=csv.writer(f)
     write.writerow(row)
     print("写入完毕!")

结果演示:

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

4.获取文件头及其索引

import csv
with 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 csv
with 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 csv
f=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 pd
path= 'D:\\test.csv'
with open(path)as file:
    data=pd.read_csv(file)
    print(data)

结果演示:
      姓名  年龄   职业  家庭地址     工资
0     张三  22   厨师   北京市   6000
1     李四  26  摄影师  湖南长沙   8000
2     王五  28  程序员    深圳  10000
3  Kaina  22   学生   黑龙江   2000
4     曹操  28   销售    上海   6000

3.describe()方法数据统计

import pandas as pd
path= 'D:\\test.csv'
with open(path)as file:
    data=pd.read_csv(file)
    #了解更多describe()知识,ctr+鼠标左键
    print(data.describe())

结果演示:
             年龄            工资
count   5.00000      5.000000
mean   25.20000   6400.000000
std     3.03315   2966.479395
min    22.00000   2000.000000
25%    22.00000   6000.000000
50%    26.00000   6000.000000
75%    28.00000   8000.000000
max    28.00000  10000.000000

4.读取文件前几行数据

import pandas as pd
path= 'D:\\test.csv'
with open(path)as file:
    data=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 pd
path= 'D:\\test.csv'
with open(path)as file:
    data=pd.read_csv(file)
    #读取第一行所有数据
    print(data.ix[0,])

结果演示:
姓名        张三
年龄        22
职业        厨师
家庭地址     北京市
工资      6000

6.读取某几行的数据

import pandas as pd
path= 'D:\\test.csv'
with open(path)as file:
    data=pd.read_csv(file)
    #读取第一行、第二行、第四行的所有数据
    print(data.ix[[0,1,3],:])

结果演示:
      姓名  年龄   职业  家庭地址    工资
0     张三  22   厨师   北京市  6000
1     李四  26  摄影师  湖南长沙  8000
3  Kaina  22   学生   黑龙江  2000

7.读取所有行和列数据

import pandas as pd
path= 'D:\\test.csv'
with open(path)as file:
    data=pd.read_csv(file)
    #读取所有行和列数据
    print(data.ix[:,:])

结果演示:
      姓名  年龄   职业  家庭地址     工资
0     张三  22   厨师   北京市   6000
1     李四  26  摄影师  湖南长沙   8000
2     王五  28  程序员    深圳  10000
3  Kaina  22   学生   黑龙江   2000
4     曹操  28   销售    上海   6000

8.读取某一列的所有行数据

import pandas as pd
path= 'D:\\test.csv'
with open(path)as file:
    data=pd.read_csv(file)
    # print(data.ix[:, 4])
    print(data.ix[:,'工资'])

结果演示:
0     6000
1     8000
2    10000
3     2000
4     6000
Name: 工资, dtype: int64

9.读取某几列的某几行

import pandas as pd
path= 'D:\\test.csv'
with open(path)as file:
    data=pd.read_csv(file)
    print(data.ix[[0,1,3],['姓名','职业','工资']])

结果演示:
      姓名   职业    工资
0     张三   厨师  6000
1     李四  摄影师  8000
3  Kaina   学生  2000

10.读取某一行和某一列对应的数据

import pandas as pd
path= 'D:\\test.csv'
with open(path)as file:
    data=pd.read_csv(file)
    #读取第三行的第三列
    print("职业---"+data.ix[2,2])

结果演示:职业---程序员

11.CSV数据的导入导出(复制CSV文件)

读方式01:

import pandas as pd
#1.读入数据
data=pd.read_csv(file)

写出数据02:

import pandas as pd
#1.写出数据,目标文件是Aim.csv
data.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 = pd.read_excel(filepath)

实例演示:

1.test.csv原文件内容

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

2.现在把test.csv中的内容复制到Aim.csv中

import pandas as pd
file=open('test.csv')
#1.读取file中的数据
data=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 相关文章推荐
用Python编写一个基于终端的实现翻译的脚本
Apr 24 Python
浅谈插入排序算法在Python程序中的实现及简单改进
May 04 Python
python中的break、continue、exit()、pass全面解析
Aug 05 Python
Python升级导致yum、pip报错的解决方法
Sep 06 Python
Python 查找list中的某个元素的所有的下标方法
Jun 27 Python
分享8个非常流行的 Python 可视化工具包
Jun 05 Python
Python3内置模块之base64编解码方法详解
Jul 13 Python
python读取raw binary图片并提取统计信息的实例
Jan 09 Python
将tf.batch_matmul替换成tf.matmul的实现
Jun 18 Python
django rest framework 自定义返回方式
Jul 12 Python
Python更改pip镜像源的方法示例
Dec 01 Python
Python基于mediainfo批量重命名图片文件
Dec 29 Python
openstack中的rpc远程调用的方法
Python实现查询剪贴板自动匹配信息的思路详解
如何利用Python实现一个论文降重工具
python实现MD5进行文件去重的示例代码
深入浅析python3 依赖倒置原则(示例代码)
Jul 09 #Python
Python中Selenium对Cookie的操作方法
Python常用配置文件ini、json、yaml读写总结
You might like
十大感人催泪爱情动漫 第一名至今不忍在看第二遍
2020/03/04 日漫
用php获取本周,上周,本月,上月,本季度日期的代码
2009/08/05 PHP
php定时计划任务与fsockopen持续进程实例
2014/05/23 PHP
PHP中浮点数计算比较及取整不准确的解决方法
2015/01/09 PHP
探究Laravel使用env函数读取环境变量为null的问题
2016/12/06 PHP
PHP接口并发测试的方法(推荐)
2016/12/15 PHP
select 控制网页内容隐藏于显示的实现代码
2010/05/25 Javascript
JavaScript Ajax Json实现上下级下拉框联动效果实例代码
2013/11/23 Javascript
JavaScript fontcolor方法入门实例(按照指定的颜色来显示字符串)
2014/10/17 Javascript
使用Raygun对Node.js应用进行错误处理的方法
2015/06/23 Javascript
精通JavaScript的this关键字
2020/05/28 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(二)
2016/05/17 Javascript
json实现添加、遍历与删除属性的方法
2016/06/17 Javascript
探究JavaScript中的五种事件处理程序方式
2016/12/07 Javascript
基于JavaScript实现熔岩灯效果导航菜单
2017/01/04 Javascript
javascript中神奇的 Date对象小结
2017/10/12 Javascript
JS实现按钮添加背景音乐示例代码
2017/10/17 Javascript
vue2.0在没有dev-server.js下的本地数据配置方法
2018/02/23 Javascript
vue实现点击追加选中样式效果
2019/11/01 Javascript
Vue组件通信中非父子组件传值知识点总结
2019/12/05 Javascript
JavaScript实现拖拽盒子效果
2020/02/06 Javascript
原生js canvas实现鼠标跟随效果
2020/08/02 Javascript
Python  连接字符串(join %)
2008/09/06 Python
新手该如何学python怎么学好python?
2008/10/07 Python
python中私有函数调用方法解密
2016/04/29 Python
教你用 Python 实现微信跳一跳(Mac+iOS版)
2018/01/04 Python
浅谈python日志的配置文件路径问题
2018/04/28 Python
专门经营化妆刷的美国彩妆品牌:Sigma Beauty
2017/09/11 全球购物
酒店管理专业毕业生自我鉴定
2014/09/29 职场文书
长城导游词300字
2015/01/30 职场文书
秋季运动会加油词
2015/07/18 职场文书
2016应届毕业生实习评语
2015/12/01 职场文书
2016年教师节贺卡寄语
2015/12/04 职场文书
解决pytorch 损失函数中输入输出不匹配的问题
2021/06/05 Python
win10拖拽文件时崩溃怎么解决?win10文件不能拖拽问题解决方法
2022/08/14 数码科技
前端框架ECharts dataset对数据可视化的高级管理
2022/12/24 Javascript