本文共 4120 字,大约阅读时间需要 13 分钟。
pip install
命令进行安装。文件是一个存储在辅助存储器上的数据序列,可以包含任何数据内容
。<variable> = open(<filename>,<mode>)
<variable>.close()
字符串或字节流取决于文件打开模式,如果是文本模式打开,则返回字符串;否则返回字节流。对于写方法也是如此
。PIL(Python Image Library)库是Python的第三方库
,具有强大的图像处理能力。同样使用 pip install
命令安装。
PIL 库主要可以实现图像归档和图像处理两方面的功能需求:
1) 图像归档:对图像进行批处理、生成图像预览、图像格式转换等 2) 图像基本处理、像素处理、颜色处理PIL 中有 21 个与图片相关的类,这些类可视为子库或模块,最常用的有Image、ImageFilter、ImageEnhance
。
from PIL import Image
序列图像文件主要指GIF、FLI、FLC、TIFF等
。.seek(frame) 方法:跳转并返回图像中的指定帧。.tell() 方法:返回当前帧的序号。
.save(filename,format):将图像保存为filename文件名,format是图片格式.convert(mode):使用不同参数,转换图像为新的模式.thumbnail(size):创建图像的缩略图,size是缩略图尺寸的二元组
示例:
im = Image.open("img1069.jpg") im.thumbnail((576, 324))im.save("test.jpg", "JPEG")
.resize(size):按size大小调整图像,生成副本.rotate(angle):按angle角度旋转图像,生成副本
.point(func):根据函数func的功能对每个元素进行运算,返回图像副本.split():提取RGB图像中的每个颜色通道,返回图像副本.merge(mode,bands):合并通道,其中mode表示色彩,bands表示色彩通道.blend(im1,im2,alpha):将两幅图片按照公式:im1*(1.0-alpha)+im2*alpha操作并生成新图像。
from PIL import ImageFilter,ImageEnchance
数据组织分为一维数据、二维数据和高维数据。
一维数据由对等关系的有序或无序数据构成,采用线性方式组织,对应数学的数组和集合
。
二维数据,也称表格数据,由关联关系构成,采用表格方式组织,对应数学中的矩阵
。
高维数据由键值对类型的数据构成,采用对象方式组织,属于整合度更好的数据组织方式。HTML、XML、JSON等是高维数据的语法结构
。
数据包括文件存储和程序使用两种状态。
一维数据是最简单的数据组织类型,有多种存储格式,常采用特殊字符分隔,分隔方式如下:
1) 用一个或多个空格分隔 2) 用英文逗号分隔 3) 用其他符号或符号组分隔分隔符的选取应当是数据中不会出现的字符。
二维数据由多条一维数据构成,国际通用的一二维数据存储格式为:CSV(Comma-Separated Values,逗号分隔值),该格式的应用有如下基本规则:
1) 纯文本格式,单一编码 2) 以行为单位。开头不留空行,行之间不留空行 3) 每行表示一个一维数据,多行表示二维数据 4) 以英文逗号分隔每列数据,列数据为空也要保留逗号 5) 对于表格数据,可以包含或不包含列名,包含列名时放置文件第一行fo = open(,’r’)ls = []for line in fo: line = line.replace(“\n”, “”) ls.append(line.splite(“,”)print(ls)fo.close()# 单行数据添加可用如下语句:ls=[……]fo.write(“,”.join(ls)+ “\n”)fo.close()#多行数据时:for row in ls: .write(“,”.join(row)+”\n”)
JSON格式可以对高维数据进行表达和存储。
JSON(JavaScript Object Notation)
表达键值对的基本格式如下:
“key” : “value”
当多个键值对放在一起时,JSON有如下规定:
1) 数据保存在键值对中 2) 键值对之间用英文逗号分隔 3) 大括号用于保存键值对数据组成的对象 4) 方括号用于保存键值对数据组成的数组json 库是Python处理JSON格式文件的标准库,使用之前import进来便可。
json库包含两个过程:编码(encoding)和解码(decoding)。编码是Python数据类型转换为JSON格式的过程,解码是JSON格式解析称Python数据类型的过程
。 CSV2JSON示例
:import jsondef csv2json(): fr = open("price2020.csv", "r", encoding="UTF-8") ls = [] for line in fr: line = line.replace("\n", "") ls.append(line.split(',')) fr.close() fw = open("price2020.json", "w", encoding="UTF-8") for i in range(1, len(ls)): ls[i] = dict(zip(ls[0], ls[i])) json.dump(ls[1:], fw, sort_keys=True, indent=4, ensure_ascii=False) fw.close()if __name__ == "__main__":csv2json()
JSON格式转CSV
:def json2csv(): fr = open("price2020.json", "r", encoding="UTF-8") ls = json.load(fr) data = [list(ls[0].keys())] for item in ls: data.append(list(item.values())) fr.close() fw = open("testJson2Csv.csv", "w", encoding="UTF-8") for item in data: fw.write(",".join(item) + "\n")fw.close()
程序设计要采用自顶向下的设计方法,采用自底向上的执行方法
pyinstaller库,是一个将Python语言脚本打包成可执行文件的第三方库,可用于Windows、Linux、MacOS X等操作系统
。pip install <package name>
pip install -U <package name>
pip uninstall <package name>
pip list
pip show <package name>
pip download <package name>
pip search <package name or key word>
http://www.lfd.uci.edu/~gohlke/pythonlibs/
import numpy as np
最常用的其子库:pyplot,引用如下:
import matplotlib.pyplot as plt
用语句:
import matplotlib
matplotlib.rcParams[‘font.family’]=’字体名’
可以修改字体。
转载地址:http://nqqgn.baihongyu.com/