Maison > développement back-end > Tutoriel Python > Comment lire et écrire des tableaux Excel en python

Comment lire et écrire des tableaux Excel en python

(*-*)浩
Libérer: 2019-07-09 10:27:41
original
6817 Les gens l'ont consulté

J'ai récemment effectué des travaux de traitement et de calcul de données. Les données étant enregistrées au format .CSV, j'ai commencé à utiliser Excel pour les traiter directement. Mais en le faisant, j'ai découvert que le travail répétitif n'avait pas beaucoup de sens, alors j'ai pensé à écrire un petit outil pour m'aider à y faire face. Il m'est arrivé de lire dans un livre auparavant sur l'utilisation de Python pour traiter des tableaux Excel, mais malheureusement je ne l'ai pas lu attentivement.

Comment lire et écrire des tableaux Excel en python

Python utilise principalement les deux bibliothèques xlrd et xlwt pour faire fonctionner Excel, c'est-à-dire que xlrd est une bibliothèque pour lire Excel et xlwt est une bibliothèque pour écrire Excel .

Écrire Excel en Python——xlwt(Apprentissage recommandé : Tutoriel vidéo Python)

La difficulté d'écrire Excel en Python est ne pas construire un classeur lui-même, mais les données renseignées, sort du cadre.

Il existe également des problèmes épineux lors de l'écriture dans Excel. Par exemple, l'écriture de cellules fusionnées est plus gênante. De plus, il existe différents styles d'écriture.

Le code détaillé est le suivant :

import xlwt

#设置表格样式
def set_style(name,height,bold=False):
    style = xlwt.XFStyle()
    font = xlwt.Font()
    font.name = name
    font.bold = bold
    font.color_index = 4
    font.height = height
    style.font = font
    return style

#写Excel
def write_excel():
    f = xlwt.Workbook()
    sheet1 = f.add_sheet('学生',cell_overwrite_ok=True)
    row0 = ["姓名","年龄","出生日期","爱好"]
    colum0 = ["张三","李四","恋习Python","小明","小红","无名"]
    #写第一行
    for i in range(0,len(row0)):
        sheet1.write(0,i,row0[i],set_style('Times New Roman',220,True))
    #写第一列
    for i in range(0,len(colum0)):
        sheet1.write(i+1,0,colum0[i],set_style('Times New Roman',220,True))

    sheet1.write(1,3,'2006/12/12')
    sheet1.write_merge(6,6,1,3,'未知')#合并行单元格
    sheet1.write_merge(1,2,3,3,'打游戏')#合并列单元格
    sheet1.write_merge(4,5,3,3,'打篮球')

    f.save('test.xls')

if __name__ == '__main__':
    write_excel()
Copier après la connexion

Python lit Excel - xlrd

Python lit les tableaux Excel Par rapport à xlwt, xlrd fournit Il y a. de nombreuses interfaces, mais il existe également plusieurs problèmes gênants dans le processus, tels que la lecture des dates et la lecture du contenu des cellules fusionnées.

L'idée générale est d'ouvrir le fichier, de sélectionner le tableau, de lire le contenu des lignes et des colonnes et de lire les données du tableau

Le code détaillé est le suivant :

import xlrd
from datetime import date,datetime

file = 'test3.xlsx'

def read_excel():

    wb = xlrd.open_workbook(filename=file)#打开文件
    print(wb.sheet_names())#获取所有表格名字

    sheet1 = wb.sheet_by_index(0)#通过索引获取表格
    sheet2 = wb.sheet_by_name('年级')#通过名字获取表格
    print(sheet1,sheet2)
    print(sheet1.name,sheet1.nrows,sheet1.ncols)

    rows = sheet1.row_values(2)#获取行内容
    cols = sheet1.col_values(3)#获取列内容
    print(rows)
    print(cols)

    print(sheet1.cell(1,0).value)#获取表格里的内容,三种方式
    print(sheet1.cell_value(1,0))
    print(sheet1.row(1)[0].value)
Copier après la connexion

Plus d'articles techniques liés à Python, veuillez visiter la colonne Tutoriel Python pour apprendre !

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal