当前位置: 首页 > news >正文

视频网站做cpaphp网站开发需求文档

视频网站做cpa,php网站开发需求文档,房屋装修设计网站,网站搜索怎么做php作者#xff1a;奈何缘浅wyjhttps://juejin.im/post/6868073137263607821Python 操作 Excel常用工具数据处理是 Python 的一大应用场景#xff0c;而 Excel 又是当前最流行的数据处理软件。因此用 Python 进行数据处理时#xff0c;很容易会和 Excel 打起交道。得益于前人的… 作者奈何缘浅wyjhttps://juejin.im/post/6868073137263607821Python 操作 Excel常用工具数据处理是 Python 的一大应用场景而 Excel 又是当前最流行的数据处理软件。因此用 Python 进行数据处理时很容易会和 Excel 打起交道。得益于前人的辛勤劳作Python 处理 Excel 已有很多现成的轮子比如 xlrd xlwt xlutils 、 XlsxWriter 、 OpenPyXL 而在 Windows 平台上可以直接调用 Microsoft Excel 的开放接口这些都是比较常用的工具还有其他一些优秀的工具这里就不一一介绍接下来我们通过一个表格展示各工具之间的特点类型xlrdxlwtxlutilsXlsxWriterOpenPyXLExcel开放接口读取支持不支持支持支持写入支持支持支持支持修改支持不支持支持支持xls支持不支持不支持支持xlsx高版本支持支持支持大文件不支持支持支持不支持效率快快快超慢功能较弱强大一般超强大以上可以根据需求不同选择合适的工具现在为大家主要介绍下最常用的 xlrd xlwt xlutils 系列工具的使用。xlrd xlwt xlutils 介绍xlrdxlwtxlutils 是由以下三个库组成xlrd用于读取 Excel 文件xlwt用于写入 Excel 文件xlutils用于操作 Excel 文件的实用工具比如复制、分割、筛选等安装库安装比较简单直接用 pip 工具安装三个库即可安装命令如下$ pip install xlrd xlwt xlutils写入 Excel接下来我们就从写入 Excel 开始话不多说直接看代码如下# 导入 xlwt 库import xlwt# 创建 xls 文件对象wb  xlwt.Workbook()# 新增两个表单页sh1  wb.add_sheet(成绩)sh2  wb.add_sheet(汇总)# 然后按照位置来添加数据,第一个参数是行第二个参数是列# 写入第一个sheetsh1.write(0, 0, 姓名)sh1.write(0, 1, 专业)sh1.write(0, 2, 科目)sh1.write(0, 3, 成绩)sh1.write(1, 0, 张三)sh1.write(1, 1, 信息与通信工程)sh1.write(1, 2, 数值分析)sh1.write(1, 3, 88)sh1.write(2, 0, 李四)sh1.write(2, 1, 物联网工程)sh1.write(2, 2, 数字信号处理分析)sh1.write(2, 3, 95)sh1.write(3, 0, 王华)sh1.write(3, 1, 电子与通信工程)sh1.write(3, 2, 模糊数学)sh1.write(3, 3, 90)# 写入第二个sheetsh2.write(0, 0, 总分)sh2.write(1, 0, 273)# 最后保存文件即可wb.save(test.xls)运行代码结果会看到生成名为 test.xls 的 Excel 文件打开文件查看如下图所示以上就是写入 Excel 的代码是不是很简单下面我们再来看下读取 Excel 该如何操作。读取 Excel读取 Excel 其实也不难请看如下代码# 导入 xlrd 库import xlrd# 打开刚才我们写入的 test_w.xls 文件wb  xlrd.open_workbook(test_w.xls)# 获取并打印 sheet 数量print( sheet 数量:, wb.nsheets)# 获取并打印 sheet 名称print( sheet 名称:, wb.sheet_names())# 根据 sheet 索引获取内容sh1  wb.sheet_by_index(0)# 或者# 也可根据 sheet 名称获取内容# sh  wb.sheet_by_name(成绩)# 获取并打印该 sheet 行数和列数print( usheet %s 共 %d 行 %d 列 % (sh1.name, sh1.nrows, sh1.ncols))# 获取并打印某个单元格的值print( 第一行第二列的值为:, sh1.cell_value(0, 1))# 获取整行或整列的值rows  sh1.row_values(0) # 获取第一行内容cols  sh1.col_values(1) # 获取第二列内容# 打印获取的行列值print( 第一行的值为:, rows)print( 第二列的值为:, cols)# 获取单元格内容的数据类型print( 第二行第一列的值类型为:, sh1.cell(1, 0).ctype)# 遍历所有表单内容for sh in wb.sheets():for r in range(sh.nrows):# 输出指定行print( sh.row(r))输出如下结果细心的朋友可能注意到这里我们可以获取到单元格的类型上面我们读取类型时获取的是数字1那1表示什么类型又都有什么类型呢别急下面我们通过一个表格展示下数值类型说明0empty空1string字符串2number数字3date日期4boolean布尔值5error错误通过上面表格我们可以知道刚获取单元格类型返回的数字1对应的就是字符串类型。修改 excel上面说了写入和读取 Excel 内容接下来我们就说下更新修改 Excel 该如何操作修改时就需要用到 xlutils 中的方法了。直接上代码来看下最简单的修改操作# 导入相应模块import xlrdfrom xlutils.copy import copy# 打开 excel 文件readbook  xlrd.open_workbook(test_w.xls)# 复制一份wb  copy(readbook)# 选取第一个表单sh1  wb.get_sheet(0)# 在第五行新增写入数据sh1.write(4, 0, 王欢)sh1.write(4, 1, 通信工程)sh1.write(4, 2, 机器学习)sh1.write(4, 3, 89)# 选取第二个表单sh1  wb.get_sheet(1)# 替换总成绩数据sh1.write(1, 0, 362)# 保存wb.save(test.xls)从上面代码可以看出这里的修改 Excel 是通过 xlutils 库的 copy 方法将原来的 Excel 整个复制一份然后再做修改操作最后再保存。看下修改结果如下格式转换操作在平时我们使用 Excel 时会对数据进行一下格式化或者样式设置在这里把上面介绍写入的代码简单修改下使输出的格式稍微改变一下代码如下# 导入 xlwt 库import xlwt# 设置写出格式字体红色加粗styleBR  xlwt.easyxf(font: name Times New Roman, color-index red, bold on)# 设置数字型格式为小数点后保留两位styleNum  xlwt.easyxf(num_format_str#,##0.00)# 设置日期型格式显示为YYYY-MM-DDstyleDate  xlwt.easyxf(num_format_strYYYY-MM-DD)# 创建 xls 文件对象wb  xlwt.Workbook()# 新增两个表单页sh1  wb.add_sheet(成绩)sh2  wb.add_sheet(汇总)# 然后按照位置来添加数据,第一个参数是行第二个参数是列sh1.write(0, 0, 姓名, styleBR)   # 设置表头字体为红色加粗sh1.write(0, 1, 日期, styleBR)   # 设置表头字体为红色加粗sh1.write(0, 2, 成绩, styleBR)   # 设置表头字体为红色加粗# 插入数据sh1.write(1, 0, 张三,)sh1.write(1, 1, 2020-07-01, styleDate)sh1.write(1, 2, 90, styleNum)sh1.write(2, 0, 李四)sh1.write(2, 1, 2020-08-02)sh1.write(2, 2, 95, styleNum)# 设置单元格内容居中的格式alignment  xlwt.Alignment()alignment.horz  xlwt.Alignment.HORZ_CENTERstyle  xlwt.XFStyle()style.alignment  alignment# 合并A4,B4单元格并将内容设置为居中sh1.write_merge(3, 3, 0, 1, 总分, style)# 通过公式计算C2C3单元格的和sh1.write(3, 2, xlwt.Formula(C2C3))# 对 sheet2 写入数据sh2.write(0, 0, 总分, styleBR)sh2.write(1, 0, 185)# 最后保存文件即可wb.save(test.xls)输出结果可以看出使用代码我们可以对字体颜色、对齐、合并等平时 Excel 的操作进行设置也可以格式化日期和数字类型的数据。当然了这里只是介绍了部分功能不过这已经足够我们日常使用了想了解更多功能操作可以参考官网。python-excel官网www.python-excel.org/Python 操作 Word安装 python-docx处理 Word 需要用到 python-docx 库目前版本为 0.8.10 执行如下安装命令$ pip install python-docx################# 运行结果 ################C:\Users\Ypip install python-docxLooking in indexes: https://pypi.doubanio.com/simpleCollecting python-docx  Downloading https://pypi.doubanio.com/packages/e4/83/c66a1934ed5ed8ab1dbb9931f1779079f8bca0f6bbc5793c06c4b5e7d671/python-docx-0.8.10.tar.gz (5.5MB)     |████████████████████████████████| 5.5MB 3.2MB/sRequirement already satisfied: lxml2.3.2 in c:\users\y\appdata\local\programs\python\python37\lib\site-packages (from python-docx) (4.5.0)Building wheels for collected packages: python-docx  Building wheel for python-docx (setup.py) ... done  Created wheel for python-docx: filenamepython_docx-0.8.10-cp37-none-any.whl size184496 sha2567ac76d3eec848a255b4f197d07e7b78ab33598c814d536d9b3c90b5a3e2a57fb  Stored in directory: C:\Users\Y\AppData\Local\pip\Cache\wheels\05\7d\71\bb534b75918095724d0342119154c3d0fc035cedfe2f6c9a6cSuccessfully built python-docxInstalling collected packages: python-docxSuccessfully installed python-docx-0.8.10复制代码OK如果提示以上信息则安装成功。写入 Word平时我们在操作 Word 写文档的时候一般分为几部分标题、章节、段落、图片、表格、引用以及项目符号编号等。下面我们就按这几部分如何用 Python 操作来一一介绍。标题文档标题创建比较简单通过 Document() 创建出一个空白文档只要调用 add_heading 方法就能创建标题。# 导入库from docx import Documentfrom docx.shared import Ptfrom docx.shared import Inchesfrom docx.oxml.ns import qn# 新建空白文档doc1  Document()# 新增文档标题doc1.add_heading(如何使用 Python 创建和操作 Word,0)# 保存文件doc1.save(word1.docx)这样就完成了创建文档和文章标题的操作下面运行程序会生成名为 word1.docx 的文档打开文章显示如下图所示章节与段落有了文章标题下面我们来看章节和段落是怎么操作的在上面代码后面增加章节和段落操作的代码如下# 导入库from docx import Documentfrom docx.shared import Ptfrom docx.shared import Inchesfrom docx.oxml.ns import qn# 新建空白文档doc1  Document()# 新增文档标题doc1.add_heading(如何使用 Python 创建和操作 Word,0)# 创建段落描述doc1.add_paragraph( Word 文档在我们现在的生活和工作中都用的比较多我们平时都使用 wps 或者 office 来对 Word 进行处理可能没想过它可以用 Python 生成下面我们就介绍具体如何操作……)# 创建一级标题doc1.add_heading(安装 python-docx 库,1)# 创建段落描述doc1.add_paragraph(现在开始我们来介绍如何安装 python-docx 库具体需要以下两步操作)# 创建二级标题doc1.add_heading(第一步安装 Python,2)# 创建段落描述doc1.add_paragraph(在python官网下载python安装包进行安装。)# 创建三级标题doc1.add_heading(第二步安装 python-docx 库,3)# 创建段落描述doc1.add_paragraph(window下winR输入CMD打开命令行输入pip install python-docx即可下载。)# 保存文件doc1.save(word2.docx)上面我们说了 add_heading 方法用来增加文章标题不过通过上面代码我们能知道这个方法的第二个参数为数字其实这个就是用来标示几级标题的在我们平时就用来标示章节。add_paragraph 方法则是用来在文章中增加段落的 运行程序看下效果字体和引用前面我们通过 add_paragraph 方法增加了三个段落现在我们就看下如何对段落中字体如何操作以及引用段落的操作。继续修改以上代码增加对文章字体字号、加粗、倾斜等操作具体代码如下# 导入库from docx import Documentfrom docx.shared import Ptfrom docx.shared import Inchesfrom docx.oxml.ns import qnfrom docx.shared import RGBColor# 新建空白文档doc1  Document()# 新增文档标题doc1.add_heading(如何使用 Python 创建和操作 Word,0)# 创建段落描述doc1.add_paragraph( Word 文档在我们现在的生活和工作中都用的比较多我们平时都使用 wps 或者 office 来对 Word 进行处理可能没想过它可以用 Python 生成下面我们就介绍具体如何操作……)# 创建一级标题doc1.add_heading(安装 python-docx 库,1)# 创建段落描述doc1.add_paragraph(现在开始我们来介绍如何安装 python-docx 库具体需要以下两步操作)# 创建二级标题doc1.add_heading(第一步安装 Python,2)# 创建段落描述doc1.add_paragraph(在python官网下载python安装包进行安装。)# 创建三级标题doc1.add_heading(第二步安装 python-docx 库,3)# 创建段落描述doc1.add_paragraph(window下winR输入CMD打开命令行输入pip install python-docx即可下载。)# 创建段落添加文档内容paragraph  doc1.add_paragraph(这是第二步的安装描述)# 段落中增加文字并设置字体字号run  paragraph.add_run((注意这里设置了字号为20))run.font.size  Pt(20)# 设置英文字体run  doc1.add_paragraph(这里设置英文字体).add_run(This Font is Times New Roman )run.font.name  Times New Roman# 设置中文字体run  doc1.add_paragraph(这里设置中文字体).add_run(当前字体为黑体)run.font.name黑体r  run._elementr.rPr.rFonts.set(qn(w:eastAsia), 黑体)# 设置斜体run  doc1.add_paragraph(这段设置).add_run(文字的是斜体 )run.italic  True# 设置粗体run  doc1.add_paragraph(这段再设置).add_run(这里设置粗体).bold  True# 设置字体带下划线run  doc1.add_paragraph(这段为下划线).add_run(这里设置带下划线).underline  True# 设置字体颜色run  doc1.add_paragraph(这段字体为红色).add_run(这里设置字体为红色)run.font.color.rgb  RGBColor(0xFF, 0x00, 0x00)# 增加引用doc1.add_paragraph(这里是我们引用的一段话用Python改变人生改变世界FIGHTING。, styleIntense Quote)# 保存文件doc1.save(word2.docx)上面代码主要是针对段落字体的各种设置每段代码都标有注释应该比较容易理解 运行程序看下效果项目列表我们平时在使用 Word 时为了能展示更清晰会用到项目符号和编号将内容通过列表的方式展示出来下面我们新建一个文件 word1.py 并编写如下代码# 导入库from docx import Documentfrom docx.shared import Ptfrom docx.shared import Inchesfrom docx.oxml.ns import qn# 新建文档doc2  Document()doc2.add_paragraph(哪个不是动物)# 增加无序列表doc2.add_paragraph(苹果, styleList Bullet)doc2.add_paragraph(喜洋洋, styleList Bullet)doc2.add_paragraph(懒洋洋, styleList Bullet)doc2.add_paragraph(沸洋洋, styleList Bullet)doc2.add_paragraph(灰太狼, styleList Bullet)doc2.add_paragraph(2020年度计划)# 增加有序列表doc2.add_paragraph(CSDN达到博客专家, styleList Number)doc2.add_paragraph(每周健身三天, styleList Number)doc2.add_paragraph(每天学习一个新知识点, styleList Number)doc2.add_paragraph(学习50本书, styleList Number)doc2.add_paragraph(减少加班时间, styleList Number)# 保存文件doc2.save(word1.docx)图片和表格我们平时编辑文章时插入图片和表格也是经常使用到的那用 Python 该如何操作插入图片和表格首先我们随便找了个图片我这用了 Python的logo 标志图文件名为 python-logo.png利用add_picture添加图片利用add_table添加表格然后在 word1.py 文件中增加如下代码# 导入库from docx import Documentfrom docx.shared import Ptfrom docx.shared import Inchesfrom docx.oxml.ns import qn# 新建文档doc2  Document()doc2.add_paragraph(哪个不是动物)# 增加无序列表doc2.add_paragraph(苹果, styleList Bullet)doc2.add_paragraph(喜洋洋, styleList Bullet)doc2.add_paragraph(懒洋洋, styleList Bullet)doc2.add_paragraph(沸洋洋, styleList Bullet)doc2.add_paragraph(灰太狼, styleList Bullet)doc2.add_paragraph(2020年度计划)# 增加有序列表doc2.add_paragraph(CSDN达到博客专家, styleList Number)doc2.add_paragraph(每周健身三天, styleList Number)doc2.add_paragraph(每天学习一个新知识点, styleList Number)doc2.add_paragraph(学习50本书, styleList Number)doc2.add_paragraph(减少加班时间, styleList Number)doc2.add_heading(图片,2)# 增加图像doc2.add_picture(C:/Users/Y/Pictures/python-logo.png, widthInches(5.5))doc2.add_heading(表格,2)# 增加表格这是表格头table  doc2.add_table(rows1, cols4)hdr_cells  table.rows[0].cellshdr_cells[0].text  编号hdr_cells[1].text  姓名hdr_cells[2].text  职业# 这是表格数据records  (    (1, 张三, 电工),    (2, 张五, 老板),    (3, 马六, IT),    (4, 李四, 工程师))# 遍历数据并展示for id, name, work in records:    row_cells  table.add_row().cells    row_cells[0].text  str(id)    row_cells[1].text  name    row_cells[2].text  work# 手动增加分页doc2.add_page_break()# 保存文件doc2.save(word1.docx)读取 Word 文件上面写了很多用 Python 创建空白 Word 文件格式化字体并保存到文件中接下来我们再简单介绍下如何读取已有的 Word 文件请看如下代码# 引入库from docx import Document# 打开文档1doc1  Document(word1.docx)# 读取每段内容pl  [ paragraph.text for paragraph in doc1.paragraphs]print(###### 输出word1文章的内容 ######)# 输出读取到的内容for i in pl:print(i)# 打开文档2doc2  Document(word2.docx)print(\n###### 输出word2文章内容 ######)pl2  [ paragraph.text for paragraph in doc2.paragraphs]# 输出读取到的内容for j in pl2:print(j)# 读取表格材料并输出结果tables  [table for table in doc2.tables]for table in tables:for row in table.rows:for cell in row.cells:print (cell.text,end  )print()print(\n)以上代码是将之前我们输出的两个文档内容都读取出来当然这里只是打印到控制台并没有做其他处理。现在我们执行看下结果Python 操作 CSV简介CSVCSV 全称 Comma-Separated Values中文叫逗号分隔值或字符分隔值它以纯文本形式存储表格数据(数字和文本)其本质就是一个字符序列可以由任意数目的记录组成记录之间以某种换行符分隔每条记录由字段组成通常所有记录具有完全相同的字段序列字段间常用逗号或制表符进行分隔。CSV 文件格式简单、通用在现实中有着广泛的应用其中使用最多的是在程序之间转移表格数据。CSV 与 Excel因为 CSV 文件与 Excel 文件默认都是用 Excel 工具打开那他们有什么区别呢我们通过下表简单了解一下。CSVExcel文件后缀为 .csv文件后缀为 .xls 或 .xlsx纯文本文件二进制文件存储数据不包含格式、公式等不仅可以存储数据还可以对数据进行操作可以通过 Excel 工具打开也可以通过文本编辑器打开只能通过 Excel 工具打开只能编写一次列标题每一行中的每一列都有一个开始标记和结束标记导入数据时消耗内存较少数据时消耗内存较多基本使用Python 通过 csv 模块来实现 CSV 格式文件中数据的读写该模块提供了兼容 Excel 方式输出、读取数据文件的功能这样我们无需知道 Excel 所采用 CSV 格式的细节同样的它还可以定义其他应用程序可用的或特定需求的 CSV 格式。csv 模块中使用 reader 类和 writer 类读写序列化的数据使用 DictReader 类和 DictWriter 类以字典的形式读写数据下面来详细看一下相应功能。首先来看一下 csv 模块常量信息如下所示属性说明QUOTE_ALL指示 writer 对象给所有字段加上引号QUOTE_MINIMAL指示 writer 对象仅为包含特殊字符(如定界符、引号字符、行结束符等)的字段加上引号QUOTE_NONNUMERIC指示 writer 对象为所有非数字字段加上引号QUOTE_NONE指示 writer 对象不使用引号引出字段writer(csvfile, dialect’excel’, **fmtparams)返回一个 writer 对象该对象负责将用户的数据在给定的文件类对象上转换为带分隔符的字符串。csvfile 可以是具有 write() 方法的任何对象如果 csvfile 是文件对象则使用 newline’’ 打开可选参数 dialect 是用于不同的 CSV 变种的特定参数组可选关键字参数 fmtparams 可以覆写当前变种格式中的单个格式设置。看下示例import csvwith open(test.csv, w, newline) as csvfile:    writer  csv.writer(csvfile)    writer.writerow([id, name, age])# 写入多行    data  [(1001, 张三, 21), (1002, 李四, 31)]    writer.writerows(data)reader(csvfile, dialect’excel’, **fmtparams)返回一个 reader 对象该对象将逐行遍历 csvfilecsvfile 可以是文件对象和列表对象如果是文件对象要使用 newline’’ 打开。看下示例import csvwith open(test.csv, newline) as csvfile:    reader  csv.reader(csvfile, delimiter )for row in reader:print(, .join(row))Sniffer 类用于推断 CSV 文件的格式该类提供了如下两个方法sniff(sample, delimitersNone)分析给定的 sample如果给出可选的 delimiters 参数则该参数会被解释为字符串该字符串包含了可能的有效定界符。has_header(sample)分析示例文本(假定为 CSV 格式)如果第一行很可能是一系列列标题则返回 True。该类及方法使用较少了解即可下面通过一个示例简单了解一下。import csvwith open(test.csv, newline) as csvfile:     dialect  csv.Sniffer().sniff(csvfile.read(1024))     csvfile.seek(0)     reader  csv.reader(csvfile, dialect)for row in reader:print(row)Reader 对象Reader 对象指 DictReader 实例和 reader() 函数返回的对象下面看一下其公开属性和方法。next()返回 reader 的可迭代对象的下一行返回值可能是列表或字典。dialectdialect 描述只读供解析器使用。line_num源迭代器已经读取了的行数。fieldnames字段名称该属性为 DictReader 对象属性。Writer 对象Writer 对象指 DictWriter 实例和 writer() 函数返回的对象下面看一下其公开属性和方法。writerow(row)将参数 row 写入 writer 的文件对象。writerows(rows)将 rows_(即能迭代出多个上述_ row 对象的迭代器)中的所有元素写入 writer 的文件对象。writeheader()在 writer 的文件对象中写入一行字段名称该方法为 DictWriter 对象方法。dialectdialect 描述只读供 writer 使用。写读追加状态r读w写a追加r  rw(可读可写文件若不存在就报错(IOError))w  wr(可读可写文件若不存在就创建)a ar(可追加可写文件若不存在就创建)对应的如果是二进制文件就都加一个b就好啦rb  wb  ab  rb  wb  ab- End -分享PyAI等互联网干货点亮 在看
http://www.zqtcl.cn/news/118860/

相关文章:

  • 电商平台正在建设中网站页面提示开发手机网站用什么好
  • 电商设计素材网站推荐百度云app下载安装
  • 网站怎样和首页做链接地址百度怎么打广告在首页
  • 眉县做网站网站开发技术可行性分析
  • 深圳求职网站哪个好网站上面的在线咨询是怎么做的
  • 做饰品一般用什么网站做首饰凡客数据
  • 工业电商做网站怎么样wordpress 韩国 主题
  • 网站的优化从几个方面网站建设需注意哪些事项
  • 网站建设的技术有哪些内容东莞网站建设最优
  • 网站建设税费很多网站没有后台
  • 百度云主机上装网站flash怎么做网页
  • 外贸网站能用阿里云吗哔哩哔哩网页版打不开
  • 南宁月嫂网站建设财经直播的网站开发一个多少钱
  • 宁波网站的建设百度网盟推广 网站
  • 大连城乡建设局网站青岛网站建设外贸
  • 石家庄网站建设招聘珠海快速网站建设
  • 网站建设代理ai制作网页
  • 微网站平台怎样做网站wordpress侧栏跟随
  • 手机网站建设好吗湖南省专业建设公司网站的机构
  • 网站代码 字体好用的cms网站
  • 美食网站首页设计用手机怎么看自己做的网站
  • 平台类网站开发怎样做永久网站二维码
  • 网站开发客户挖掘php网站开发心得3500字
  • 检察院做网站的目的青岛网站推广优化
  • dede替换网站模板定制网站建设的流程
  • 天津专业网站制作网站开发模板
  • 做二手车网站需要什么怎样建立门户网站
  • 宁波做网站首荐荣盛网络网站建设太仓
  • 购物网站公司要花费多少钱wordpress 菜单 字体加粗
  • 网站模板如何编辑软件crm免费客户管理系统