python文件和数据格式化PPT课件.ppt

上传人:小飞机 文档编号:2135325 上传时间:2023-01-16 格式:PPT 页数:81 大小:4.08MB
返回 下载 相关 举报
python文件和数据格式化PPT课件.ppt_第1页
第1页 / 共81页
python文件和数据格式化PPT课件.ppt_第2页
第2页 / 共81页
python文件和数据格式化PPT课件.ppt_第3页
第3页 / 共81页
python文件和数据格式化PPT课件.ppt_第4页
第4页 / 共81页
python文件和数据格式化PPT课件.ppt_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《python文件和数据格式化PPT课件.ppt》由会员分享,可在线阅读,更多相关《python文件和数据格式化PPT课件.ppt(81页珍藏版)》请在三一办公上搜索。

1、Python语言程序设计,第7章 文件和数据格式化,文件的使用,数据源,文件概述,文件是一个存储在辅助存储器上的数据序列,可以包含任何数据内容。概念上,文件是数据的集合和抽象,类似地,函数是程序的集合和抽象。用文件形式组织和表达数据更有效也更为灵活。文件包括两种类型:文本文件和二进制文件。,文件概述,二进制文件直接由比特0和比特1组成,没有统一字符编码,文件内部数据的组织格式与文件用途有关。二进制文件和文本文件最主要的区别在于是否有统一的字符编码无论文件创建为文本文件或者二进制文件,都可以用“文本文件方式”和“二进制文件方式”打开,打开后的操作不同。,文件概述,微实例7.1:理解文本文件和二进

2、制文件的区别。,文件概述,输出结果为:,采用文本方式读入文件,文件经过编码形成字符串,打印出有含义的字符;采用二进制方式打开文件,文件被解析为字节(byte)流。由于存在编码,字符串中的一个字符由2个字节表示。,文件的打开关闭,Python对文本文件和二进制文件采用统一的操作步骤,即“打开-操作-关闭”,文件的打开关闭,Python通过解释器内置的open()函数打开一个文件,并实现该文件与一个程序变量的关联,open()函数格式如下:=open(,)open()函数有两个参数:文件名和打开模式。文件名可以是文件的实际名字,也可以是包含完整路径的名字,文件的打开关闭,open()函数提供7种基

3、本的打开模式,文件的读写,根据打开方式不同可以对文件进行相应的读写操作,Python提供4个常用的文件内容读取方法,文件的读写,微实例7.2:文本文件逐行打印,文件的读写,遍历文件的所有行可以直接这样完成,文件的读写,如果程序需要逐行处理文件内容,建议采用上述代码格式:fo=open(fname,r)for line in fo:#处理一行数据fo.close(),文件的读写,Python提供3个与文件内容写入有关的方法,如表所示。,文件的读写,程序执行结果如下:,PIL库的使用,PIL库概述,PIL(Python Image Library)库是Python语言的第三方库,需要通过pip工具

4、安装。,PIL库支持图像存储、显示和处理,它能够处理几乎所有图片格式,可以完成对图像的缩放、剪裁、叠加以及向图像添加线条、图像和文字等操作。,PIL库概述,PIL库可以完成图像归档和图像处理两方面功能需求:图像归档:对图像进行批处理、生成图像预览、图像格式转换等;图像处理:图像基本处理、像素处理、颜色处理等。,PIL库Image类解析,在PIL中,任何一个图像文件都可以用Image对象表示Image类的图像读取和创建方法。,PIL库Image类解析,要加载一个图像文件,最简单的形式如下,之后所有操作对im起作用,PIL库Image类解析,Image类有4个处理图片的常用属性,PIL库Image

5、类解析,微实例7.1:GIF文件图像提取。对一个GIF格式动态文件,提取其中各帧图像,并保存为文件。,PIL库Image类解析,Image类的图像转换和保存方法如表所示。,PIL库Image类解析,生成birdnest.jpg图像的缩略图,其中(128,128)是缩略图的尺寸。,北京鸟巢图片及其缩略图,PIL库Image类解析,Image类可以缩放和旋转图像,其中,rotate()方法以逆时针旋转的角度值作为参数来旋转图像。,PIL库Image类解析,Image类能够对每个像素点或者一幅RGB图像的每个通道单独进行操作,split()方法能够将RGB图像各颜色通道提取出来,merge()方法能

6、够将各独立通道再合成一幅新的图像。,PIL库Image类解析,微实例7.2:图像的颜色交换。交换图像中的颜色。可以通过分离RGB图片的三个颜色通道实现颜色交换,PIL库Image类解析,被改变颜色的北京鸟巢图片,PIL库Image类解析,操作图像的每个像素点需要通过函数实现,采用lambda函数和point()方法搭配使用,例子如下,PIL库Image类解析,去掉光线的北京鸟巢图片,图像的过滤和增强,PIL库的ImageFilter类和ImageEnhance类提供了过滤图像和增强图像的方法,共10种,图像的过滤和增强,利用Image类的filter()方法可以使用ImageFilter类,如

7、下:Image.filter(ImageFilter.fuction)微实例7.3:图像的轮廓获取。获取图像的轮廓,北京鸟巢变得更加抽象、更具想象空间!,图像的过滤和增强,北京鸟巢图片的轮廓效果,图像的过滤和增强,ImageEnhance类提供了更高级的图像增强需求,它提供调整色彩度、亮度、对比度、锐化等功能。,图像的过滤和增强,微实例7.4:图像的对比度增强。增强图像的对比度为初始的20倍。,图像的过滤和增强,北京鸟巢图片的20倍对比度增强效果,图像字符画绘制,图像字符画绘制,位图图片是由不同颜色像素点组成的规则分布,如果采用字符串代替像素,图像就成为了字符画。定义一个字符集,将这个字符集替

8、代图像中的像素点。,2023/1/16,41,可编辑,图像字符画绘制,定义彩色向灰度的转换公式如下,其中R、G、B分别是像素点的RGB颜色值:Gray=R*0.2126+G*0.7152+B*0.0722因此,像素的RGB颜色值与字符集的对应函数如下:,图像字符画绘制,一二维数据格式化和处理,数据组织的维度,一维数据由对等关系的有序或无序数据构成,采用线性方式组织,对应于数学中的数组和集合等概念。,数据组织的维度,二维数据,也称表格数据,由关联关系数据构成,采用表格方式组织,对应于数学中的矩阵,常见的表格都属于二维数据。,环比:上月=100;同比:上年同月=100;定基:2015年=100。,

9、数据组织的维度,高维数据由键值对类型的数据构成,采用对象方式组织,属于整合度更好的数据组织方式。高维数据在网络系统中十分常用,HTML、XML、JSON等都是高维数据组织的语法结构。,数据组织的维度,一二维数据的存储格式,一维数据是最简单的数据组织类型,有多种存储格式,常用特殊字符分隔:(1)用一个或多个空格分隔,例如:中国 美国 日本 德国 法国 英国 意大利(2)用逗号分隔,例如:中国,美国,日本,德国,法国,英国,意大利(3)用其他符号或符号组合分隔,建议采用不出现在数据中的特殊符号中国;美国;日本;德国;法国;英国;意大利,一二维数据的存储格式,逗号分割数值的存储格式叫做CSV格式(C

10、omma-Separated Values,即逗号分隔值),它是一种通用的、相对简单的文件格式,在商业和科学上广泛应用,尤其应用在程序之间转移表格数据。,一二维数据的存储格式,该格式的应用有一些基本规则,如下:,(1)纯文本格式,通过单一编码表示字符;(2)以行为单位,开头不留空行,行之间没有空行;(3)每行表示一个一维数据,多行表示二维数据;(4)以逗号分隔每列数据,列数据为空也要保留逗号;(5)可以包含或不包含列名,包含时列名放置在文件第一行。,一二维数据的存储格式,二维数据采用CSV存储后的内容如下:,CSV格式存储的文件一般采用.csv为扩展名,可以通过Windows平台上的记事本或微

11、软Office Excel工具打开,也可以在其他操作系统平台上用文本编辑工具打开。,一二维数据的表示和读写,CSV文件的每一行是一维数据,可以使用Python中的列表类型表示,整个CSV文件是一个二维数据,由表示每一行的列表类型作为元素,组成一个二维列表。,一二维数据的表示和读写,需要注意,以split(,)方法从CSV文件中获得内容时,每行最后一个元素后面包含了一个换行符(n)。对于数据的表达和使用来说,这个换行符是多余的,可以通过使用字符串的replace()方法将其去掉,如第4行。,一二维数据的表示和读写,微实例7.6:逐行处理CSV格式数据。,一二维数据的表示和读写,运行后的输出结果如

12、下:,一二维数据的表示和读写,微实例7.7:一维数据写入CSV文件。,一二维数据的表示和读写,对于列表中存储的二维数据,可以通过循环写入一维数据的方式写入CSV文件,参考代码样式如下:for row in ls:.write(,.join(row)+n),一二维数据的表示和读写,微实例7.8:二维数据写入CSV文件。城市,环比,同比,定基北京,1.0%,1.2%,1.2%上海,1.0%,1.3%,1.3%广州,1.0%,1.2%,1.2%深圳,1.0%,1.4%,1.5%沈阳,1.0%,1.0%,1.0%,一二维数据的表示和读写,CSV格式的HTML展示,CSV格式的HTML展示,CSV格式的

13、HTML展示,CSV格式的HTML展示,高维数据的格式化,高维数据的格式化,与一维二维数据不同,高维数据能展示数据间更为复杂的组织关系。为了保持灵活性,表示高维数据不采用任何结构形式,仅采用最基本的二元关系,即键值对。万维网是高维数据最成功的典型应用。JSON格式可以对高维数据进行表达和存储。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和理解。JSON格式表达键值对的基本格式如下,键值对都保存在双引号中:key:value,高维数据的格式化,当多个键值对放在一起时,JSON有如下一些约定:数据保存在键值对中;键值对之间由逗号分隔;括号用于

14、保存键值对数据组成的对象;方括号用于保存键值对数据组成的数组。以“本书作者”JSON数据为例。,Json格式,http:/,高维数据的格式化,json库的使用,Json库的概述,json库主要包括两类函数:操作类函数和解析类函数操作类函数主要完成外部JSON格式和程序内部数据类型之间的转换功能解析类函数主要用于解析键值对内容。,Json库的解析,dumps()和loads()分别对应编码和解码功能。,Json库的解析,CSV和JSON格式相互转换,CSV和JSON格式相互转换,CSV格式常用于一二维数据表示和存储,JSON也可以表示一二维数据。在网络信息传输中,可能需要统一表示方式,因此,需要在CSV和JSON格式间进行相互转换。,CSV和JSON格式相互转换,将CSV转换成JSON格式的代码如下,将二维JSON格式数据转换成CSV格式的代码如下,供参考。,2023/1/16,81,可编辑,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号