Maison  >  Article  >  développement back-end  >  python utilise la bibliothèque openpyxl pour modifier la méthode de données du tableau Excel

python utilise la bibliothèque openpyxl pour modifier la méthode de données du tableau Excel

不言
不言original
2018-05-04 16:00:077259parcourir

Cet article présente principalement la méthode d'utilisation de python pour modifier les données d'un tableau Excel à l'aide de la bibliothèque openpyxl. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

<.>1. La bibliothèque openpyxl peut lire et écrire des fichiers au format xlsx Pour les fichiers à l'ancien format xls, vous ne pouvez utiliser que xlrd pour lire et xlwt pour écrire.

Classe d'encapsulation simple :

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):
    &#39;&#39;&#39;:param title:图表名
         pos:图表位置
         width:图表宽度
         height:图表高度
    &#39;&#39;&#39;
    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)

Utilisation simple :

1. Nouveau traitement des fichiers Excel

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

2. Traitement des fichiers Excel existants

a. Modifier les données Excel

wr = Write_excel(&#39;d:\demo.xlsx&#39;) 
wr.write(&#39;A2&#39;,&#39;hello&#39;)

b. Fusionner les cellules

wr.merge(&#39;A1:B3&#39;)

c. et d'autres attributs

La cellule B2 est définie sur la police Song, taille 14, rouge, retour à la ligne automatique, centrage horizontal, centrage vertical

font = Font(name=u&#39;宋体&#39;, size=14, color=RED, bold=True)
align = Alignment(horizontal=&#39;center&#39;, vertical=&#39;center&#39;)
wr.cellstyle(&#39;B2&#39;, font, align)

d. Créer un histogramme 3D

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", &#39;E5&#39;, 12.5, 7, 2, 1, 3, 4, 1, 2, 4)

Vous pouvez créer un histogramme 3D Les graphiques à colonnes et polylignes sont très utiles.

Recommandations associées :


Exemples de fonctions de lecture et de recadrage d'images implémentées en Python à l'aide de matplotlib

Python utilise le module de messagerie Encoder et décoder les messages

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn