1. 如何用Python打开Excel文档?如何从工作簿中取得工作表?
import openpyxl
wb = openpyxl.load_workbook('exampl.xlsx')
type(wb)
import openpyxl
wb = openpyxl.load_workbook('example.xlsx')
wb.get_sheet_names()sheet = wb.get_sheet_by_name('Sheet3')
sheet

2.如何从表中取得单元格(两种方法)?已知列字母(数字)如何得到列数字(字母)?

import openpyxl
wb = openpyxl.load_workbook('example.xlsx')
sheet = wb.get_sheet_by_name('Sheet1')
sheet['A1']
sheet.cell(row=1,column=2)

字母—>数字

import openpyxl
from openpyxl.cell import get_column_letter, column_index_from_string
get_column_letter(1)

数字—>字母

column_index_from_string('A')

3.如何从表中取得某行、某列或某个区域的切片?

import openpyxl
wb = openpyxl.load_workbook('example.xlsx')
sheet = wb.get_active_sheet()
sheet.columns[1]for cellObj in sheet.columns[1]print(cellObj.value)
import openpyxl
wb = openpyxl.load_workbook('example.xlsx')
sheet = wb.get_sheet_by_name('Sheet1')
tuple (sheet['A1':'C3'])for rowOfCellObjects in sheet['A1':'C3']:for cellObj in rowOfCellObjects:print (cellObj.coordinate, cellObj.value)print('---END OF ROW---')

4.实践项目:从2010年美国人口普查表格中读取数据。

import openpyxl, pprint
print('Opening workbook...')
import os
os.chdir(r'C:\Users\LZJ\Desktop\python\automate_online-materials')
wb = openpyxl.load_workbook('censuspopdata.xlsx')
sheet = wb.get_sheet_by_name('Population by Census Tract')
countyData = {}
print('Reading rows...')
for row in range(2,sheet.get_highest_row() + 1):State = sheet['B' + str(row)].valueCounty = sheet['C' + str(row)].valuepop = sheet['D' + str(row)].valuecountyData.setdefault(State,{})countyData[State].setdefault(County,{'tracts':0,'pop':0})countyData[State][County]['tracts'] +=1countyData[State][County]['pop'] += int(pop)
print('Writing results...')
resultFile = open('census2010.py','w')
resultFile.write('allData = ' + pprint.pformat(countyData))
resultFile.close()
print('Done.')

import os
os.chdir('C:\\Users\\LZJ\\Desktop\\python\\automate_online-materials')
import census2010
census2010.allData['AK']['Anchorage']
{'pop': 291826, 'tracts': 55}
anchoragePop = census2010.allData['AK']['Anchorage']['pop']
print('The 2010 population of Anchorage was ' + str(anchoragePop))
The 2010 population of Anchorage was 291826

5 如何用Python新建一个Excel文档并保存?如何创建和删除工作表?如何编辑单元格?
(1)新建一个Excel文档并保存

import openpyxl
wb = openpyxl.Workbook()
wb = get_sheet_names()
['Sheet']
sheet = wb.get_active_sheet()
sheet.title
'Sheet'
sheet.title = ‘Spam Bacon Eggs Sheet'
wb.get_sheet_names()
['Spam Bacon Eggs Sheet']
import openpyxl
wb = openpyxl.load_workbook('example.xlsx')
sheet = wb.get_active_sheet()
sheet.title = 'Spam Spam Spam'
wb.save('example_copy.xlsx')

(2)创建和删除工作表

import openpyxl
wb = openpyxl.Workbook()
wb.get_sheet_names()
['Sheet']
wb.create_sheet()
<Workbook "Sheet1">
wb.get_sheet_names()
['Sheet', 'Sheet1']
wb.create_sheet(index=0, title='First Sheet')
<Worksheet "First Sheet">
wb.get_sheet_names()
wb.create_sheet(index=2, title='Middle Sheet')
wb.get_sheet_names()

(3)编辑单元格

import openpyxl
wb = openpyxl.Workbook()
sheet = wb.get_sheet_by_name('Sheet')
sheet['A1'] = 'Hello World!'
sheet['A1'].value
'Hello World!'

6 实践项目:更新产品销售表格中的单元格。

import openpyxl,os
os.chdir('C:\\Users\\LZJ\\Desktop\\python\\automate_online-materials')
wb = openpyxl.load_workbook('produceSales.xlsx')
sheet = wb.get_sheet_by_name('Sheet')
PRICE_UPDATES = {'Garlic':3.07,'Celery':1.19,'Lemon':1.27}
for rowNum in range(2,sheet.max_row):produceName = sheet.cell(row=rowNum, column=1).valueif produceName in PRICE_UPDATES:sheet.cell(row=rowNum,column=2).value = PRICE_UPDATES[produceName]wb.save('updateProduceSales.xlsx')

7 如何利用font对象设置表格在单元格中的显示方式?

import openpyxl
from openpyxl.styles import Font, Style
wb = openpyxl.Workbook()
sheet = wb.get_sheet_by_name('Sheet')fontObj1 = Font(name='Times New Roman', bold=True)
styleObj1 = Style(font=fontObj1)
sheet['A1'].style/styleObj
sheet['A1'] = 'Bold Time New Roman'wb.save('styles.xlsx')

8 如何为单元格设置公式?

import openpyxl
wb = openpyxl.Workbook()
sheet = wb.get_active_sheet()sheet['A3']='=sum(A1:A2)'
wb.save('writeFormula.xlsx')

9 如何对行高、列宽、单元格合并和拆分做处理?如何冻结窗格?
(1)行高、列宽做处理

import openpyxl
wb = openpyxl.Workbook()
sheet = wb.get_active_sheet()
sheet['A1'] = 'Tall row'
sheet['B2'] = 'Wide column'
sheet.row_dimensions[1].height = 70
sheet.column_dimensions['B'].width = 20
wb.save('dimensions.xlsx')

(2)单元格合并和拆分处理

import openpyxl
wb = openpyxl.Workbook()
sheet = wb.get_active_sheet()
sheet.merge_cells('A1':'D3')
sheet['A1'] = 'Twelve cells merged together.'
sheet.merge_cells('C5':'D5')
sheet['C5'] = 'Two merged cells.'
wb.save('merged.xlsx')

(3)冻结窗格

import openpyxl
wb = openpyxl.load_workbook('produceSales.xlsx')
sheet = wb.get_active_sheet()
sheet.freeze_panes = 'A2'
wb.save('freeExample.xlsx')

10 如何创建Excel图表?

openpyxl.charts.BarChart()

LZJ的python的第8次打卡相关推荐

  1. Python实现简单的人脸打卡系统

    Python实现简单的人脸打卡系统 参考链接:https://blog.csdn.net/weixin_44451017/article/details/89086065?utm_medium=dis ...

  2. python学习之钉钉打卡

    python学习之钉钉打卡 背景 原理 实现 一.准备 二.代码 背景 曾经写过几个python小工具,刷快手.自动答题.刷火车票.爬电影天堂电影-,最近因为钉钉成了我们公司官方软件,所以,你懂得啦, ...

  3. 「实战案例」基于Python语言开发的信用评分卡

    信用风险计量模型可以包括跟个人信用评级,企业信用评级和国家信用评级.人信用评级有一系列评级模型组成,常见是A卡(申请评分卡).B卡(行为模型).C卡(催收模型)和F卡(反欺诈模型). 今天我们展示的是 ...

  4. 用Python+OpenCV+PyQt开发的答题卡识别软件

    用Python+OpenCV+PyQt开发的答题卡识别软件 软件使用说明 软件设计思路 如何设置答案 界面风格 备注 这是一个可以识别定制答题卡的软件,它可以根据用户自定的答案来进行识别,校对正误并统 ...

  5. [附源码]计算机毕业设计Python+uniapp晋中市居民健康卡小程序j7d04(程序+lw+远程部署)

    [附源码]计算机毕业设计Python+uniapp晋中市居民健康卡小程序j7d04(程序+lw+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Pyth ...

  6. python实现易统计自动打卡

    最近被老师安排提醒班级同学打卡,看到每天很多人忘记打就很心累,想着弄个自动打卡的,于是网上巴拉了一下,找到了主要接口.具体方法如下: 一.获取token值 每个用户都有固定的且不变的一个token值, ...

  7. python 基础二(学习打卡)

    python 基础二(学习打卡) python基础知识 python 基础二(学习打卡) 一.None值 二.函数返回多个值 三.局部变量和全局变量 四.异常处理(内含Zigzag代码) 五.列表 六 ...

  8. 通过Python在健康码,行程卡的截图上添加文字内容,省心省力

    通过Python在健康码,行程卡的截图上添加文字内容,省心省力 最近几年,由于疫情的原因,学校经常要求家长,把健康码,通行卡等截图内容加上学生名字以及家长的名字或者电话号码后,发给学校:如此一来,就要 ...

  9. python词频云图_python安娜卡列妮娜词云图制作

    知识点普及 词频:某个词在该文档中出现的次数停用词:数据处理时过滤掉某些字或词,如:网站.的等语料库:也就是我们要分析的所有文档的集合中文分词:将汉字序列分成一个个单独的词 使用第三方库介绍 jieb ...

  10. python lol脚本_配台电脑,能玩LOL顶配和能够写一些python脚本能用ps不卡,预算6k到8k?...

    这里有个配置是LOL的抄下來(感谢原作者)因题主还要兼运行python (几乎没什么要求顺暢就行)和PS(色彩要求及交换内存要够)我改了一下 CPU:I5 4690K原盒 1549元最好选不带核显的 ...

最新文章

  1. 4000字超干货!《统计学习方法》啃书指南(1)
  2. 有哪些相见恨晚的学习算法的方法和技巧?学到了学到了!
  3. CSAPP实验二进制炸弹
  4. linux python自动补全_Linux下在python命令行中自动补全代码(py2、3,centos、ubuntu)...
  5. 从思维导图学习操作系统(一)
  6. Java技术之掌握数据库连接工具DBUtils的应用
  7. html让布局垂直居中,css垂直居中布局总结
  8. 通过java api操作hdfs(kerberos认证)
  9. 前端学习(3224):字符串形式
  10. LeetCode450题—— 删除二叉搜索树中的节点
  11. 初学JAVA——方法重载练习
  12. springboot 常用插件
  13. Unity游戏iOS AppStore 内付费接入(In app purchase)
  14. matlab制作数字滤波器(带通滤波器)
  15. 深入理解Nginx负载均衡和反向代理_学习笔记
  16. 程序员延寿指南-活着才能输出
  17. 人脸识别像素最低_一种低分辨率图像的人脸识别方法与流程
  18. 计算机等级考试四级网络工程师真题,计算机等级考试四级网络工程师试题
  19. 【干货】PS超实用功能:美化照片
  20. slam十四讲,ch5joinmap报错,已解决

热门文章

  1. matlab如何绘制语谱图,语谱图matlab
  2. 计算机专业的情书,【实用】大学各专业表白情书,你能看懂几个
  3. PDF格式怎么修改内容,怎么给PDF加页码
  4. CTGU实验6_1-创建能否借书存储过程
  5. win中q-dir,everything,Windows Tabs,Clover各种效率神器(搜索,资源管理器,多标签)
  6. 《现代信息检索导论》课程梳理
  7. 计蒜客 - 猴子打字
  8. 谁在崛起,谁在没落?新一线城市竞争力盘点,用Python绘制动态图带你看懂!
  9. java deflate,java.util.zip.Deflater.deflate(byte[] b, int off, int len)方法示例
  10. 一款值得使用的,免费会议室管理软件【微信小程序和网页版都有】