Python verwendet die OpenpyXL-Bibliothek, um die Excel-Tabellendatenmethode zu ändern

不言
Freigeben: 2018-05-04 16:00:07
Original
7345 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich die Methode zur Verwendung der OpenpyXL-Bibliothek zum Ändern von Excel-Tabellendaten vorgestellt. Jetzt können Freunde in Not darauf verweisen

1. Die openpyxl-Bibliothek kann Dateien im alten XLS-Format lesen und schreiben. Für Dateien im alten XLS-Format können Sie nur xlrd zum Lesen und xlwt zum Schreiben verwenden.

Einfache Kapselungsklasse:

from openpyxl import load_workbook
from openpyxl import Workbook
from openpyxl.chart import BarChart, Series, Reference, BarChart3D
from openpyxl.styles import Color, Font, Alignment
from openpyxl.styles.colors import BLUE, RED, GREEN, YELLOW
class Write_excel(object):
  def __init__(self,filename):
    self.filename = filename
    self.wb = load_workbook(self.filename)
    self.ws = self.wb.active
  def write(self, coord, value):
    # eg: coord:A1
    self.ws.cell(coord).value = value
    self.wb.save(self.filename)
  def merge(self, rangstring):
    # eg: rangstring:A1:E1
    self.ws.merge_cells(rangstring)
    self.wb.save(self.filename)
  def cellstyle(self, coord, font, align):
    cell = self.ws.cell(coord)
    cell.font = font
    cell.alignment = align
  def makechart(self, title, pos, width, height, col1, row1, col2, row2, col3, row3, row4):
    ''':param title:图表名
         pos:图表位置
         width:图表宽度
         height:图表高度
    '''
    data = Reference(self.ws, min_col=col1, min_row=row1, max_col=col2, max_row=row2)
    cat = Reference(self.ws, min_col=col3, min_row=row3, max_row=row4)
    chart = BarChart3D()
    chart.title = title
    chart.width = width
    chart.height = height
    chart.add_data(data=data, titles_from_data=True)
    chart.set_categories(cat)
    self.ws.add_chart(chart, pos)
    self.wb.save(self.filename)
Nach dem Login kopieren

Einfache Verwendung:

1. Neue Excel-Dateiverarbeitung

wb = Workbook()#创建工作簿 
ws = wb.active#激活工作表 
ws1 = wb.create_sheet("Mysheet")#创建mysheet表 
ws.title = "New Title"#表明改为New Title 
ws.sheet_properties.tabColor = "1072BA"#颜色 
ws['A4'] = 4#赋值 
d = ws.cell(row=4, column=2, value=10)#赋值 
cell_range = ws['A1':'C2']#选择单元格区域 
wb.save('test.xlsx')#保存
Nach dem Login kopieren

2 , Verarbeitung vorhandener Excel-Dateien

a. Excel-Daten ändern

wr = Write_excel('d:\demo.xlsx') 
wr.write('A2','hello')
Nach dem Login kopieren

b. Zellen zusammenführen

wr.merge('A1:B3')
Nach dem Login kopieren

c. Fügen Sie Stile zu Zellen hinzu, wie Schriftarten, Farben und andere Attribute

Zelle B2 setzt Song-Dynastie, Nr. 14, rot, automatischer Zeilenumbruch, horizontale Zentrierung, vertikale Zentrierung

font = Font(name=u'宋体', size=14, color=RED, bold=True)
align = Alignment(horizontal='center', vertical='center')
wr.cellstyle('B2', font, align)
Nach dem Login kopieren

d, erstellen Ein 3D-Säulendiagramm

rows = [ 
  (None, 2013, 2014), 
  ("Apples", 5, 4), 
  ("Oranges", 6, 2), 
  ("Pears", 8, 3) 
] 
 
for row in rows: 
  ws.append(row) 
 
wr.makechart(u"3D Bar Chart", 'E5', 12.5, 7, 2, 1, 3, 4, 1, 2, 4)
Nach dem Login kopieren

kann 3D-Balken- und Liniendiagramme erstellen, was sehr nützlich ist.

Verwandte Empfehlungen:


Beispiele für Bildlese- und Schneidefunktionen, die von Python mithilfe von matplotlib implementiert wurden

Python mithilfe des E-Mail-Moduls Nachrichten verschlüsseln und entschlüsseln

Das obige ist der detaillierte Inhalt vonPython verwendet die OpenpyXL-Bibliothek, um die Excel-Tabellendatenmethode zu ändern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage