pylightxl
Python API for Excel XLSX-regneark
Generer, modifiser, manipuler og les Microsoft Excel XLSX- og XLSM-filformater via åpen kildekode Python-bibliotek.
pylightxl er et lettvekts Python-bibliotek med åpen kildekode som gir programvareutviklere muligheten til å jobbe med Microsoft Excel-filer i sin egen applikasjon uten avhengigheter. Biblioteket har gitt støtte for lesing og skriving av Excel-regneark ved hjelp av Python-kommandoer.
Biblioteket har inkludert lesestøtte XLSX- og XLSM-regnearkfilformater og skrivestøtte for XLSX-filformater. Biblioteket er veldig enkelt å bruke og installere, da det bare er en enkelt kildefil som må kopieres direkte inn i et prosjekt. Biblioteket har inkludert støtte for flere viktige funksjoner, som å lese excel-filer, lese alle eller utvalgte ark, bedre minneadministrasjon og hastighet, lese en bestemt rad eller kolonne, oppdatere raddata, legge til eller fjerne kolonner fra et ark, og mange flere .
Komme i gang med pylightxl
Biblioteket kan kjøre problemfritt på både Python3 og Python2.7.18. Den anbefalte måten å installere på er via pip: Vennligst bruk følgende kommando.
Installer pylightxl via PIP Command
pip install pylightx
Få tilgang til og les Excel-regneark via Python
Pylightxl-biblioteket gir programvareprogrammerere muligheten til å lese Excel-filer i sine egne applikasjoner uten eksterne avhengigheter. Biblioteket lar programvareutviklere lese XLSX- og XLSM-filer med bare et par linjer med Java-kode. Biblioteket gir også støtte for kun å lese utvalgte regneark. Den støtter også tilgang til og lesing av en bestemt kolonne eller rad fra en gitt Excel-fil.
Les Excel-regneark via Python API
import pylightxl as xl
# readxl returns a pylightxl database that holds all worksheets and its data
db = xl.readxl(fn='folder1/folder2/excelfile.xlsx')
# pylightxl also supports pathlib as well
my_pathlib = pathlib.Path('folder1/folder2/excelfile.xlsx')
db = xl.readxl(my_pathlib)
# pylightxl also supports file-like objects for django users
with open('excelfile.xlsx', 'rb') as f:
db = xl.readxl(f)
# read only selective sheetnames
db = xl.readxl(fn='folder1/folder2/excelfile.xlsx', ws=('Sheet1','Sheet3'))
# return all sheetnames
db.ws_names
Opprett en Excel XLSX-fil via Python
Åpen kildekode-pylightxl-biblioteket har gitt muligheten til å lage Excel XLSX-filer med bare et par linjer med Python-kode i sine egne applikasjoner uten å installere Microsoft Excel-fil. Biblioteket støtter kun celledataskriving og støtter for øyeblikket ikke grafer, formatering, bilder, makroer osv. Det lar brukere skrive en ny excel-fil fra pythondata og støtter funksjoner som å legge til et tomt regneark, legge til rader, kolonner, og mange flere.
Lag Excel XLSX-fil via Python API
import pylightxl as xl
# take this list for example as our input data that we want to put in column A
mydata = [10,20,30,40]
# create a blank db
db = xl.Database()
# add a blank worksheet to the db
db.add_ws(ws="Sheet1")
# loop to add our data to the worksheet
for row_id, data in enumerate(mydata, start=1)
db.ws(ws="Sheet1").update_index(row=row_id, col=1, val=data)
# write out the db
xl.writexl(db=db, fn="output.xlsx")
Lese semi-strukturerte data via Python API
Åpen kildekode-pylightxl-biblioteket har inkludert muligheten for å lese semi-strukturerte data i deres egne Python-applikasjoner. Noen ganger er det nødvendig å lese data fra et ark som kan begynne på en hvilken som helst rad eller kolonne og har et hvilket som helst antall rader eller kolonner per datagruppe. Biblioteket søker opp og finner kolonne-ID-ene der datagrupper starter og leser opp flere tabeller på samme måte som du ville lest en bok.
Les semi-strukturerte data via Python API
import pylightxl
db = pylightxl.readxl(fn='Book1.xlsx')
# request a semi-structured data (ssd) output
ssd = db.ws(ws='Sheet1').ssd(keycols="KEYCOLS", keyrows="KEYROWS")
ssd[0]
>>> {'keyrows': ['r1', 'r2', 'r3'], 'keycols': ['c1', 'c2', 'c3'], 'data': [[1, 2, 3], [4, '', 6], [7, 8, 9]]}
ssd[1]
>>> {'keyrows': ['rr1', 'rr2', 'rr3', 'rr4'], 'keycols': ['cc1', 'cc2', 'cc3'], 'data': [[10, 20, 30], [40, 50, 60], [70, 80, 90], [100, 110, 120]]}