python对excel表格的操作

# 工作簿, 工作表,单元格
#workbook ,sheet ,cell
# 灵活擦欧总各种对象,进行修改‘
# 编辑样式
%cd D:\python全站\office

D:\python全站\office
# pip install openpyxl
import openpyxl
wb = openpyxl.load_workbook(‘coop.xlsx‘)
# 加载创建的表格coop.xlsx
wb.get_active_sheet()
c:\users\coop\miniconda3\envs\coop\lib\site-packages\ipykernel_launcher.py:1: DeprecationWarning: Call to deprecated function get_active_sheet (Use the .active property).
  """Entry point for launching an IPython kernel.

<Worksheet "Sheet2">
sh1 = wb.active
cell1 = sh1[‘A1‘]
print(cell1)
cell1.value
<Cell ‘Sheet2‘.A1>

‘学生‘
sh1[‘A1‘].value
‘学生‘
sh1[‘A2‘].coordinate
‘A2‘
sh1[‘A2‘] = ‘zhao‘  # another sh1[‘A2‘].value = ‘zhao‘
sh1[‘A2‘].value
‘zhao‘
###########
sh1.title
‘Sheet2‘
sh1.title = ‘成绩单‘
sh1.title
‘成绩单‘
wb.save(‘coop-1.xlsx‘)  # 另存为
##########
# 取sheet1的数据,放入sheet2,成绩> 65
# 打开工作簿
%cd D:\python全站\office
import openpyxl
wb = openpyxl.load_workbook(‘coop.xlsx‘)
# 打开sheet1,打开sheet2

#操作sheet1,存入sheet2
# 另存为新的文件
D:\python全站\office
# sh1 = wb.get_sheet_by_name(‘Sheet1‘)  # 首写大写
sh1 = wb[‘Sheet1‘]  #对Sheet1页面操作
sh2 = wb[‘Sheet2‘]  #对Sheet2页面操作
for row in sh1.rows:  # 循环每一行 sh1.row()
    print(row)
    print(row[0].value, row[1].value)   # 打印的是元祖
(<Cell ‘Sheet1‘.A1>, <Cell ‘Sheet1‘.B1>)
学生 成绩
(<Cell ‘Sheet1‘.A2>, <Cell ‘Sheet1‘.B2>)
coop 60
(<Cell ‘Sheet1‘.A3>, <Cell ‘Sheet1‘.B3>)
murphy 61
(<Cell ‘Sheet1‘.A4>, <Cell ‘Sheet1‘.B4>)
lisi 62
(<Cell ‘Sheet1‘.A5>, <Cell ‘Sheet1‘.B5>)
zhangsan 63
(<Cell ‘Sheet1‘.A6>, <Cell ‘Sheet1‘.B6>)
lilei 64
(<Cell ‘Sheet1‘.A7>, <Cell ‘Sheet1‘.B7>)
××× 65
(<Cell ‘Sheet1‘.A8>, <Cell ‘Sheet1‘.B8>)
hao 66
for rows in sh1.rows:
    if rows[0].coordinate != ‘A1‘:   #元祖用法
        #rows[0].coordinate去坐标,不等于A1
        print(rows[0].value, rows[1].value)
coop 60
murphy 61
lisi 62
zhangsan 63
lilei 64
××× 65
hao 66
for rows in sh1.rows:
    if rows[0].coordinate != ‘A1‘ and rows[1].value >63:
        #rows[0].coordinate去坐标,不等于A1
        print(rows[0].value, rows[1].value)
lilei 64
××× 65
hao 66
index = 2
for rows in sh1.rows:
    if rows[0].coordinate != ‘A1‘ and rows[1].value >63:
        #rows[0].coordinate去坐标,不等于A1
        print(rows[0].value, rows[1].value)
        sh2[‘A‘ + str(index)] = rows[0].value
        sh2[‘B‘ + str(index)] = rows[1].value
        print(‘in sh2:‘, sh2[‘A‘+str(index)].value,sh2[‘B‘+ str(index)].value)
        index += 1
wb.save(‘coop-2.xlsx‘)
lilei 64
in sh2: lilei 64
××× 65
in sh2: ××× 65
hao 66
in sh2: hao 66
# 第二种写法,根据范围取值
#A2 B2
# A3, B3
# index = 2
sh1 = wb[‘Sheet1‘]
sh2 = wb[‘Sheet3‘]
for rows in range(2, sh1.max_row +1):
    grade = sh1.cell(row = rows, column = 2).value
#     print(grade)
#     print(type(grade))
    if grade > 63:
        sh2[‘A‘ + str(rows)] = sh1.cell(row = rows, column = 1).value
        sh2[‘B‘ + str(rows)] = grade
        print(‘in sh2:‘, sh2[‘A‘+str(index)].value,sh2[‘B‘+ str(index)].value)

wb.save(‘coop-3.xlsx‘)
in sh2: None None
in sh2: None None
in sh2: None None
print(sh1.max_row)
8
# 最后一行添加平均分数
sh1.cell(row=9, column=2).value = ‘=average(B2:B8)‘
sh1.cell(row=9, column=1).value = ‘平均分‘
print(sh1[‘B10‘].value)
wb.save(‘coop-4.xlsx‘)
None
print(sh1[‘B9‘].value)
=average(B2:B8)
from openpyxl.styles import Font
# Font?
font = Font(bold =True, size = 20) # name, size, bold, italic...
sh1[‘B9‘].font = font

wb.save(‘coop-5.xlsx‘)

原文地址:http://blog.51cto.com/13118411/2148166

时间: 2024-11-09 09:35:08

python对excel表格的操作的相关文章

Python读写excel表格的方法

目的:实现用python做excel的读取.新增.修改操作. 环境:ubuntu 16.04  Python 3.5.2 用python读写文档,一般是操作txt文件或者可以用记事本打开的文件,因为这个操作很直接,不需要导入其他模块,但如果想要对excel表格进行操作,就需要导入其他模块,包括:xlrd(读取),xlwt(写入),xlutils(复制),一般是这三个模块,且需要另外下载,http://pypi.python.org/pypi/模块名. 表格的读取: 读取只需要导入xlrd模块:

Python—对Excel进行读写操作

学习Python的过程中,我们会遇到Excel的读写问题.通过搜索得知,我们可以使用xlwt module将数据写入Excel表格,使用xlrd module从Excel读取数据.下面介绍如何实现使用python对Excel进行读写操作. (1)对Excel的写操作: # -*- coding: utf-8 -*- #导入xlwt模块 import xlwt # 创建一个Workbook对象,这就相当于创建了一个Excel文件 book = xlwt.Workbook(encoding='utf

python读取excel表格生成sql语句 第一版

由于单位设计数据库表·,都用sql.不知道什么原因不用 powerdesign或者ermaster工具,建表很痛苦  作为程序猿当然要想办法解决,用Python写一个程序解决 需要用到 xlrd linux下 sudo pip install xlrd 主要是适用于db2数据库 excel 表结构 其中 number是不正确的字段类型 不知道同事为啥这么设置.这里程序里有纠错,这个程序就是将sql语句拼好. __author__ = 'c3t' # coding:utf-8 import xlr

Python:读取Excel表格时出现的u&#39;\u51c6’ 无法正确显示汉字

读取Excel后,想显示其中一行的元素,结果读出来是这样[u'\u51c6\u8003\u8bc1\u53f7', u'\u8003\u751f\u59d3\u540d'],始终不显示正常的汉字 依照网上的方法直接print()即可输出,试验后发现确实可以,不过一次只能输出一个元素,多余一个元素则依旧 后查找得知解决方法:需要用到json库 1 import json 2 #……文件的读取略去 3 #json.dumps(A).decode("unicode-escape") 4 #这

python对Excel表格操作

操作场景,给一个Excel表格随机生成10万个手机号码 python中常见的对Excel操作模块 xlwt module 将数据写入Excel表 xlrd module 读取Excel表格 xlsxwriter modole  xlwt模块的升级版,用于处理大量数据 先用xlwt写入Excel操作 import xlwt # 将数据写入Excel import random book = xlwt.Workbook(encoding='utf-8',style_compression=0) #

Python学习—对excel表格的操作

安装对excel操作的模块:openpyxl 1.excel中的基本定义 工作簿(workbook):整个excel表哥文件称为一个工作簿 工作表(sheet):一个工作簿中有多个工作表 活动表(active sheet):保存文件时候停留在那个表,那个表就被称为活动表 行(row): 1,2,3,4,5,6........ 列(column): A,B,C,D...... 单元格(cell): B1,C1,C5...... 例子1 import openpyxl #打开一个excel文档 wb

Python处理Excel表格

对于操作Excel,需要Xlrd/xlwt这两个模块,下面推荐出系统性学习的网址: python操作Excel读写--使用xlrd 官方文档 Python 使用 Xlrd/xlwt 操作 Excel 用Python读写Excel文件 1 Windows下先下载 xlwt 和xlrd 2. 解压xlrd-0.9.2.tar.gz至指定文件夹 3. 在CMD控制台下切换至上述指定文件夹路径,输入命令 python setup.py install 完成安装 Linux下安装同安装python 或者用

python中excel表格的读写

1 #!usr/bin/env python 2 #-*- coding:utf-8 -*- 3 import xlrd 4 import xlwt 5 from xlutils.copy import copy 6 import os 7 8 data = xlrd.open_workbook('M3000.xls') #打开一个excel表格 9 table = data.sheets()[0] #通过该方法读取的sheet是只读的,不能进行写操作 10 rows = table.nrows

python读写excel表格2

"""之前我们学习了使用xlrd 和xlwt 这两个模块来来分别读写操作excel表格固然可以实现功能,具体做法可以参加之前的上一篇博客现在我们找到了另一个模块:openpyxl 这个模块可以同时对excel 表进行读写更加的方便,实用,而且使用起来更加的简单,具体的做法如下:"""from openpyxl import load_workbook exel = load_workbook(r"C:\Users\DELL\Deskto