1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > python存储数据的操作(csv格式文件 Excel表格文件)!!!

python存储数据的操作(csv格式文件 Excel表格文件)!!!

时间:2022-04-19 21:50:27

相关推荐

python存储数据的操作(csv格式文件 Excel表格文件)!!!

python存储数据

存储数据的方式两种存储数据方式的区别csv格式文件Excel格式文件csv文件的写入csv文件的读取Excel基本概念Excel文件的写入Excel文件的读取

存储数据的方式

•常用的存储数据的方式有两种——存储成csv格式文件、存储成Excel文件(不是复制黏贴的那种)

两种存储数据方式的区别

csv格式文件

csv是一种字符串文件的格式,它组织数据的语法就是在字符串之间加分隔符——行与行之间是加换行符,同行字符之间是加逗号分隔

•可以用任意的文本编辑器打开(如记事本),也可以用Excel打开,还可以通过Excel把文件另存为csv格式(因为Excel支持csv格式文件)

代码测试:

file = open('test.csv', 'a+')# 创建test.csv文件,以追加的读写模式file.write('喜羊羊,美羊羊,沸羊羊,懒羊羊')# 写入test.csv文件file.close()# 关闭文件

运行结果:

•当前目录下会出现一个csv文件,

•找到文件目录,用记事本的方式打开test.csv文件,会出现以下文件内容

•也可以直接打开文件(Excel表格形式)

csv文件总结:

csv文件里的逗号可以充当分隔同行字符串的作用

如果不加分隔符的话,数据都堆在一起,会显得杂乱无章,不方便我们之后提取和查找。是一种让数据变得有规律的组织方式

用csv格式存储数据,读写比较方便,易于实现,文件也会比Excel文件小。但csv文件缺少Excel文件本身的很多功能,如不能嵌入图像和图表,不能生成公式等等

Excel格式文件

•Excel文件(电子表格),有专门保存文件的格式,即xls和xlsx(Excel版本的文件格式是xls,Excel及之后的版本的文件格式就是xlsx)

csv文件的写入

•操作csv文件我们需要借助csv模块,python自带csv模块,不需要我们使用pip安装

•csv写入我们可以直接用open函数来写,为什么现在还要先引用csv模块?

答案:直接运用别人写好的模块,比我们使用open()函数来读写,语法更简洁,功能更强大

•open操作模式表:

代码测试:

import csv# 引用csv模块。csv_file = open('movie.csv', 'w', newline='', encoding='gbk')# 调用open()函数打开csv文件,传入参数:文件名“demo.csv”、写入模式“w”、newline=''、encoding='gbk'writer = csv.writer(csv_file)# 用csv.writer()函数创建一个writer对象。writer.writerow(['电影', '豆瓣评分'])# 调用writer对象的writerow()方法,可以在csv文件里写入一行文字 “电影”和“豆瓣评分”。writer.writerow(['喜羊羊与灰太狼', '9.9'])# 在csv文件里写入一行文字 “喜羊羊与灰太狼”和“9.9”writer.writerow(['熊出没之夺宝熊兵', '10.0'])# 在csv文件里写入一行文字 “熊出没之夺宝熊兵”和“10.0”csv_file.close()# 关闭文件

两种不同文件格式的结果:

当文件内容出现乱码时,可将open()函数中的encoding='gbk’改为encoding='utf-8’

newline=’ '的作用:避免出现两倍行距

csv文件的读取

操作方法:用csv.reader()函数创建一个reader对象进行操作

代码测试:

import csvcsv_file = open('movie.csv', 'r', newline='', encoding='gbk')#编码方式与写入文件时相同reader = csv.reader(csv_file)for row in reader:print(row)

运行结果:

总结:

不同文件使用不同的操作模式

文件写入编码一定要于文件读取编码相同</code.

•csv模块本身还有很多函数和方法,读者可自行学习,附上csv模块官方文档链接:csv模块官方文档

Excel基本概念

一个Excel文档也称为一个工作簿(workbook),每个工作簿里可以有多个工作表(worksheet),当前打开的工作表又叫活动表

每个工作表里有行和列,特定的行与列相交的方格称为单元格(cell)。如上图第A列和第1行相交的方格我们可以直接表示为A1单元格

Excel文件的写入

•操作Excel文件需要借助openpyxl模块,python不自带此模块,需要我们自行安装

•安装模块可参考以下博客:pip换源安装python各种库(终极详细版)

代码测试:

import openpyxlwb = openpyxl.Workbook()# 利用openpyxl.Workbook()函数创建新的workbook(工作簿)对象,就是创建新的空的Excel文件sheet = wb.active# wb.active就是获取这个工作簿的活动表,通常就是第一个工作表sheet.title = '电影工作表'# 可以用.title给工作表重命名。现在第一个工作表的名称就会由原来默认的“sheet1”改为"电影工作表"sheet['A1'] = '熊出没'# 往A1的单元格中写入了'熊出没'rows = [['我喜欢的', '名人名言'], ['但行好事', '莫问前程']]for i in rows:sheet.append(i)wb.save('Movie.xlsx')

文件内容:

Excel文件的读取

代码测试:

import openpyxlwb = openpyxl.load_workbook('Movie.xlsx')# 调用openpyxl.load_workbook()函数,打开“Movie.xlsx”文件sheet = wb['电影工作表']# 获取“MOvie.xlsx”工作簿中名为“电影工作表”的工作表sheetname = wb.sheetnames# sheetnames是用来获取工作簿所有工作表的名字的。当你不知道工作簿到底有几个工作表,就可以把工作表的名字都打印出来,寻找自己所需要的工作表print(sheetname)A1_cell = sheet['A1']# 把“电影工作表”工作表中A1单元格赋值给A1_cell,再利用单元格value属性,就能打印出A1单元格的值A1_value = A1_cell.valueprint(A1_value)

运行结果:

总结:

灵活使用各种方法,文件存储读取搭配使用

注意前后编码格式,一定要相同

需要学习openpyxl模块的其他方法查找官方文档,openpyxl模块的官方文档:openpyxl模块官方文档

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。