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在命令行下使用google翻译(带语音)
Jan 16 Python
Python的Flask开发框架简单上手笔记
Nov 16 Python
利用python批量检查网站的可用性
Sep 09 Python
Flask实现跨域请求的处理方法
Sep 27 Python
python2与python3的print及字符串格式化小结
Nov 30 Python
Python3.5 Pandas模块缺失值处理和层次索引实例详解
Apr 23 Python
python 定义类时,实现内部方法的互相调用
Dec 25 Python
python-OpenCV 实现将数组转换成灰度图和彩图
Jan 09 Python
python集成开发环境配置(pycharm)
Feb 14 Python
Python PIL库图片灰化处理
Apr 07 Python
Python基于Socket实现简易多人聊天室的示例代码
Nov 29 Python
Python中tqdm的使用和例子
Sep 23 Python
openstack中的rpc远程调用的方法
Python实现查询剪贴板自动匹配信息的思路详解
如何利用Python实现一个论文降重工具
python实现MD5进行文件去重的示例代码
深入浅析python3 依赖倒置原则(示例代码)
Jul 09 #Python
Python中Selenium对Cookie的操作方法
Python常用配置文件ini、json、yaml读写总结
You might like
PHP使用imagick读取PDF生成png缩略图的两种方法
2014/03/20 PHP
php+html5使用FormData对象提交表单及上传图片的方法
2015/02/11 PHP
php实现和c#一致的DES加密解密实例
2017/07/24 PHP
thinkPHP5实现数据库添加内容的方法
2017/10/25 PHP
Laravel 集成 Geetest验证码的方法
2018/05/14 PHP
PHP实现生成数据字典功能示例
2018/05/24 PHP
从父页面读取和操作iframe中内容方法
2009/07/25 Javascript
js获取和设置属性的方法
2014/02/20 Javascript
javascript实现根据身份证号读取相关信息
2014/12/17 Javascript
Bootstrap每天必学之前端开发框架
2015/11/19 Javascript
jQuery实现可以控制图片旋转角度效果(附demo源码下载)
2016/01/27 Javascript
浅谈javascript基础之客户端事件驱动
2016/06/10 Javascript
网页爬虫之cookie自动获取及过期自动更新的实现方法
2018/03/06 Javascript
JS选取DOM元素常见操作方法实例分析
2018/12/10 Javascript
微信小程序实现滑动切换自定义页码的方法分析
2018/12/29 Javascript
微信小程序实现的picker多级联动功能示例
2019/05/23 Javascript
[02:15]你好,这就是DOTA!
2015/08/05 DOTA
剖析Django中模版标签的解析与参数传递
2015/07/21 Python
python 定时修改数据库的示例代码
2018/04/08 Python
Python从ZabbixAPI获取信息及实现Zabbix-API 监控的方法
2018/09/17 Python
Python列表list排列组合操作示例
2018/12/18 Python
Python使用scrapy爬取阳光热线问政平台过程解析
2019/08/14 Python
如何基于Python获取图片的物理尺寸
2019/11/25 Python
Python破解BiliBili滑块验证码的思路详解(完美避开人机识别)
2020/02/17 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
python批量修改文件名的示例
2020/09/27 Python
用 Django 开发一个 Python Web API的方法步骤
2020/12/03 Python
Html5新增标签与样式及让元素水平垂直居中
2019/07/11 HTML / CSS
Foot Locker英国官网:美国知名运动产品零售商
2019/02/21 全球购物
英国最受信任的在线眼镜商之一:Fashion Eyewear
2019/10/31 全球购物
摩飞电器俄罗斯官方网站:Morphy Richards俄罗斯
2020/07/30 全球购物
《放飞蜻蜓》教学反思
2014/04/27 职场文书
工作检讨书大全
2015/01/26 职场文书
个园导游词
2015/02/04 职场文书
同意转租证明
2015/06/24 职场文书
《走遍天下书为侣》教学反思
2016/02/22 职场文书