Openpyxl basic function demo code

demo code:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
summarydescription
- openpyxl basic功能练习
- https://openpyxl.readthedocs.io/en/default/usage.html
:REQUIRES::TODO::AUTHOR: Pengtao.Fan
:ORGANIZATION:
:CONTACT: fanpengtao@gmail.com
:SINCE: Sun Aug  7 21:21:38 2016
:VERSION: 0.1
"""
#===============================================================================
# PROGRAM METADATA
#===============================================================================
__author__ = ''
__contact__ = ''
__copyright__ = ''
__license__ = ''
__date__ = 'Sun Aug  7 21:21:38 2016'
__version__ = '0.1'#===============================================================================
# IMPORT STATEMENTS
#===============================================================================#from visual import *  # IMPORTS NumPy.*, SciPy.*, and Visual objects (sphere, box, etc.)
#import matplotlib.pyplot as plt  # plt.plot(x,y)  plt.show()
#from pylab import *  # IMPORTS NumPy.*, SciPy.*, and matplotlib.*
#import os  # os.walk(basedir) FOR GETTING DIR STRUCTURE
#import pickle  # pickle.load(fromfile)  pickle.dump(data, tofile)
#from tkFileDialog import askopenfilename, askopenfile
#from collections import namedtuple
#from ctypes import *
#import glob
#import random
#import cv2
from openpyxl import Workbook
from openpyxl.compat import range
from openpyxl.cell import get_column_letter
from openpyxl import load_workbook
from openpyxl.drawing.image import Image
from openpyxl.utils import FORMULAE #to check the name of a formula
import pprint
import datetime
#===============================================================================
# METHODS
#===============================================================================
class OpenpyxlStudy():def __init_(self):passdef getxl(self):wb = load_workbook(filename = 'test.xlsx')pprint.pprint(wb.get_sheet_names())sheet_ranges = wb['ov']#f14 = sheet_ranges['F14'] #<Cell ov.F14>f14 = sheet_ranges['F14'].value #DEE#f14 = sheet_ranges.cell('F14').value#f14 = sheet_ranges.cell(raw = 15, column = 14)print(f14)def setxl(self):wb = Workbook()dest_filename = 'empty_book.xlsx'ws1 = wb.active #设置下次打开时的活动窗格ws1.title = "range names"for row in range(1, 40):ws1.append(range(600))ws2 = wb.create_sheet(title="Pi")ws2['F5'] = 3.14ws3 = wb.create_sheet(title="Data")for row in range(10, 20):for col in range(27, 54):#这种cell赋值方法比较新#注意get_column_letter_ = ws3.cell(column=col, row=row, value="%s" % get_column_letter(col))print(ws3['AA10'].value)wb.save(filename = dest_filename)def Fommats(self):'''Using number formats'''#dest_filename = 'empty_book.xlsx'#wb = load_workbook(filename = dest_filename)wb = Workbook(guess_types=True)        ws = wb.active# set data using a Python datetimews['A1'] = datetime.datetime.now()print(ws['A1'].number_format)# set percentage using a string followed by the percent signws['B1'] = '3.14%'print(ws['B1'].value)print(ws['B1'].number_format)wb.save("fommats.xlsx")def Formulae(self):'''excel自带数学公式功能'''wb = Workbook()ws = wb.active# 添加excel自带的sum公式ws['A1'] = '=SUM(1, 2)'wb.save('formula.xlsx')if "HEX2DEC" in FORMULAE:print("HEX2DEC in FORMULAE")else:print("HEX2DEC not in FORMULAE")def MergeCells(self):'''合并单元格''''''Merge / Unmerge cells'''wb = Workbook()ws = wb.active #设置下次打开时的活动窗格ws = wb.create_sheet(title="MergeCells")ws.merge_cells('A1:B2')#or#ws.merge_cells(start_row=0,start_column=0,end_row=8,end_column=8)ws['A1'] = 'You should see three logos below'# create an image#img = Image('image.jpg')# add to worksheet and anchor next to cells#ws.add_image(img, 'A1')wb.save('MergeCells.xlsx')passdef UnMergeCells(self):'''拆分单元格''''''Merge / Unmerge cells'''passdef InsertImage(self):'''inset image at A1 cell'''wb = Workbook()ws = wb.active #设置下次打开时的活动窗格ws.title = 'InsertImageSheet'ws.merge_cells('A1:D7')ws['A1'] = 'You should see three logos below'# create an imageimg = Image('image.jpg')# add to worksheet and anchor next to cellsws.add_image(img, 'A1')#==============================================================================
#         '''虽然A1占用了A3 格子,但不能如下写。'''
#         ws2 = wb.create_sheet('SecondImageSheet')
#         ws2.merge_cells('A1:D7')
#         ws2['A3'] = 'You should see three logos below'
#
#         # create an image
#         img = Image('image.jpg')
#         # add to worksheet and anchor next to cells
#         ws.add_image(img, 'A3')
#==============================================================================wb.save('InsertImage.xlsx')def Foldcolumns(self):'''隐藏某些列'''wb = Workbook(True)ws = wb.create_sheet()ws.column_dimensions.group('A','D', hidden=True)wb.save('Foldcolumns.xlsx')#===============================================================================
# MAIN METHOD AND TESTING AREA
#===============================================================================
def main():"""Description of main()"""test = OpenpyxlStudy()#test.getxl()#test.setxl()#test.Fommats()#test.Formulae()#test.MergeCells()#test.InsertImage()test.Foldcolumns()if __name__ == '__main__':    main()

转载于:https://www.cnblogs.com/qanniu/p/5747737.html

penpyxl basic function demo code相关推荐

  1. 【红宝书】OpenGL Demo code编译与运行

    本人就职于国际知名终端厂商,负责modem芯片研发. 在5G早期负责终端数据业务层.核心网相关的开发工作,目前牵头6G算力网络技术标准研究. [红宝书]OpenGL Demo code编译与运行 文章 ...

  2. Windows API GetProcAddress 及demo code

    GetProcAddress函数检索指定的动态链接库(DLL)中的输出库函数地址. 函数原型: FARPROC GetProcAddress( HMODULE hModule, // DLL模块句柄 ...

  3. demo code - Multi-thread render in GLX

    只创建了一个子线程,专门用于渲染 子线程中打开了另一个 Display, 并在此Display下创建了 opengl context 和 多个Window 子线程有自己的消息循环,因为Window产生 ...

  4. QT打开文件选择框(demo code)

    QString filepath = QFileDialog::getOpenFileName(NULL, "请选择数据文件", "", "CSV(* ...

  5. PIC16F1829 单片机配置和DEMO CODE

  6. c++ notes (very basic)

    文章目录 1.HELLO WORLD Compile and Execute 2.Variables 2.1 Arithmetic Operators 2.2 Challenge: Temperatu ...

  7. php 微信授权 跨域,微信公众号支付 请求跳转code跨域

    1.开发微信商城公众号支付,前端发起ajax请求到服务器初始化订单.之后由服务器获取openid之后发起支付.在获取openid的第一步出现跨域异常.一下是部分代码: header('Access-C ...

  8. 微信授权demo php,PHP微信公众平台oauth2.0网页授权登录类的封装demo

    一.微信授权使用的是OAuth2.0授权的方式.主要有以下简略步骤: 第一步:用户同意授权,获取code 第二步:通过code换取网页授权access_token 第三步:拉取用户信息(需scope为 ...

  9. Spring学习笔记(二十三)——实现网站微信扫码登录获取微信用户信息Demo

    目录 微信扫码登录介绍 开发步骤 微信扫码登录示例 微信开放文档 遇到的问题 使用第三方工具实现网站微信扫码登录 开发前介绍 开发步骤 微信扫码登录获取微信用户信息Demo实现流程 实现效果 实现过程 ...

最新文章

  1. MySQL数据库锁构建_MySQL数据库InnoDB存储引擎中的锁机制
  2. cifar-10 cnn 分类
  3. cpuz北桥频率和内存频率_内存频率怎样计算,一分钟教会你
  4. 我的代码为什么看起来像shit?
  5. 借助码云快速安装 golang.org/x/lint/golint 和 golang.org/x/tools/ 等依赖
  6. 前端学习(1757):前端调试值之网络条件与user-Agent的设置
  7. linux命令fs ls,Linux 命令:fsdisk
  8. 160505、oracle 修改字符集 修改为ZHS16GBK
  9. 全民 Transformer (二): Transformer在深度学习和NLP中如何发挥作用
  10. 毕业设计之 --- 基于Java web的动漫论坛设计与实现
  11. 开源的屏幕画笔工具(基于WPF InkCanvas)
  12. 计算机ping使用的端口,ping 端口:Ping端口命令的使用方法介绍
  13. 苹果6能解掉id锁吗_iPhone进水保修吗?苹果官方正式回应了
  14. sketchup生成面域插件_适用于Revit / SketchUp / Rhino / ArchiCAD插件最新版
  15. laravel 阿里云短信验证码
  16. 如何快速批量建网站?
  17. 国家企业信用信息公示系统爬虫——流程分析
  18. 将钞票分解为多张钞票的和
  19. 【JS】json导出到excel,自定义文件名和后缀名
  20. C++实现降低一幅图像的空间分辨率

热门文章

  1. Python day2 数据类型 字符类型 文件处理
  2. 【小梅哥SOPC学习笔记】系统时钟的使用
  3. 使用CodeIgniter输入类
  4. 云原生应用程序_什么是云原生应用程序?
  5. fortran_Fortran 60岁生日快乐
  6. (15)Node.js 自定义模块
  7. 传记 | 我的大学三年-不以物喜,不以己悲
  8. 设计模式-里氏替换原则
  9. Bootstrap3 模态对话框的选项
  10. linuxc网络通信