pylightxl  

 
 

Python API برای صفحات گسترده Excel XLSX

فرمت فایل XLSX و XLSM مایکروسافت اکسل را از طریق کتابخانه منبع باز Python ایجاد کنید، تغییر دهید، دستکاری کنید و بخوانید.

pylightxl یک کتابخانه Python سبک منبع باز است که به توسعه دهندگان نرم افزار این قابلیت را می دهد که با فایل های Microsoft Excel در داخل برنامه خود با هیچ وابستگی کار کنند. این کتابخانه برای خواندن و نوشتن صفحات گسترده اکسل با استفاده از دستورات پایتون پشتیبانی می کند.

این کتابخانه شامل فرمت‌های صفحه گسترده XLSX و XLSM Reading و پشتیبانی از نوشتن برای فرمت‌های فایل XLSX است. استفاده و نصب کتابخانه بسیار آسان است زیرا تنها یک فایل منبع وجود دارد که می‌تواند مستقیماً در یک پروژه کپی شود. این کتابخانه شامل پشتیبانی از چندین ویژگی مهم، مانند خواندن فایل‌های اکسل، خواندن همه یا برگه‌های انتخاب شده، مدیریت و سرعت حافظه بهتر، خواندن یک سطر یا ستون خاص، به‌روزرسانی داده‌های ردیف، افزودن یا حذف ستون‌ها از یک صفحه، و بسیاری موارد دیگر است. .

Previous Next

شروع کار با pylightxl

این کتابخانه می تواند به راحتی بر روی Python3 و Python2.7.18 اجرا شود. روش توصیه شده برای نصب از طریق pip است: لطفا از دستور زیر استفاده کنید.

pylightxl را از طریق دستور PIP نصب کنید

 pip install pylightx

دسترسی و خواندن صفحه گسترده اکسل از طریق پایتون

کتابخانه pylightxl به برنامه نویسان نرم افزار این امکان را می دهد که فایل های Excel را در داخل برنامه های خود بدون هیچ گونه وابستگی خارجی بخوانند. این کتابخانه به توسعه دهندگان نرم افزار اجازه می دهد تا فایل های XLSX و XLSM را تنها با چند خط کد جاوا بخوانند. این کتابخانه همچنین از خواندن فقط کاربرگ انتخاب شده پشتیبانی می کند. همچنین از دسترسی و خواندن یک ستون یا ردیف خاص از یک فایل اکسل خاص پشتیبانی می کند. 

خواندن صفحه گسترده اکسل از طریق 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

یک فایل اکسل XLSX از طریق پایتون ایجاد کنید

کتابخانه pylightxl منبع باز قابلیت ایجاد فایل های Excel XLSX را تنها با چند خط کد پایتون در داخل برنامه های خود بدون نصب فایل مایکروسافت اکسل فراهم کرده است. این کتابخانه فقط از نوشتن داده های سلولی پشتیبانی می کند و در حال حاضر از نمودارها، قالب بندی، تصاویر، ماکروها و غیره پشتیبانی نمی کند. به کاربران اجازه می دهد یک فایل اکسل جدید از داده های پایتون بنویسند و از ویژگی هایی مانند افزودن کاربرگ خالی، افزودن ردیف، ستون، و خیلی بیشتر.

ایجاد فایل اکسل XLSX از طریق 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")

خواندن داده های نیمه ساختار یافته از طریق Python API

کتابخانه منبع باز pylightxl دارای قابلیت خواندن داده های نیمه ساختار یافته در برنامه های پایتون خود است. گاهی اوقات لازم است داده ها را از برگه ای بخوانیم که می تواند از هر سطر یا ستونی شروع شود و هر تعداد سطر یا ستون در هر گروه داده داشته باشد. کتابخانه به جستجو و یافتن شناسه‌های ستونی می‌پردازد که گروه‌های داده از آنجا شروع می‌کنند و چندین جدول را به همان روشی که شما یک کتاب می‌خوانید می‌خوانند.

خواندن داده های نیمه ساختار یافته از طریق 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]]}
 فارسی