openpyxl का उपयोग करके Excel फ़ाइलें पढ़ना, लिखना और स्टाइल करना सीखें। आधुनिक Excel फ़ॉर्मैट्स (.xlsx) और उन्नत सुविधाओं के साथ काम करने के व्यावहारिक उदाहरण जानें।
openpyxl एक कुशल Python लाइब्रेरी है जो आपको Excel 2007 में पेश किए गए आधुनिक XML-आधारित फ़ॉर्मैट्स (.xlsx, .xlsm) में Excel फ़ाइलें पढ़ने और लिखने में सक्षम बनाती है, और Excel 2010 से आगे की उन्नत सुविधाओं का पूरा समर्थन देती है। इसे मूल रूप से PHPExcel का Python पोर्ट के रूप में विकसित किया गया था और आज भी सक्रिय डेवलपर समुदाय द्वारा मेंटेन किया जा रहा है। यह लाइब्रेरी डेटा ऑटोमेशन, रिपोर्टिंग और फ़ॉर्मैटिंग वर्कफ़्लोज़ में बेहतरीन है, जिससे यह विशेष रूप से उन उपयोगकर्ताओं के लिए उपयोगी है जिन्हें Excel फ़ाइलों के साथ काम करना होता है, भले ही उनके सिस्टम पर Excel इंस्टॉल न हो।
कई संगठन openpyxl का उपयोग वित्तीय रिपोर्टों को स्वचालित करने, डेटाबेस एक्सपोर्ट से चार्ट जनरेट करने, और मार्केटिंग रिपोर्टों में फ़ॉर्मूले व फ़ॉर्मैटिंग लागू करने के लिए करते हैं। यह लाइब्रेरी केवल Python कोड के माध्यम से Excel फ़ाइलों पर सूक्ष्म-स्तरीय नियंत्रण प्रदान करती है।
openpyxl क्या है?
openpyxl विशेष रूप से Excel 2010+ फ़ॉर्मैट्स के लिए नैटिव समर्थन प्रदान करने के लिए डिज़ाइन किया गया है। यह लाइब्रेरी कई फ़ाइल फ़ॉर्मैट्स के साथ काम करती है:
.xlsx - Excel वर्कबुक
.xlsm - मैक्रोज़ वाली Excel वर्कबुक
.xltx - Excel टेम्पलेट
.xltm - मैक्रोज़ वाला Excel टेम्पलेट
openpyxl का एक बड़ा लाभ यह है कि इसे आपके कंप्यूटर पर Excel इंस्टॉल होने की आवश्यकता नहीं होती। यह सर्वर वातावरण, स्वचालित रिपोर्टिंग सिस्टम और डेटा प्रोसेसिंग पाइपलाइनों के लिए आदर्श बनाता है। कई अन्य Python लाइब्रेरियाँ, जिनमें pandas भी शामिल है, Excel इंटरफ़ेस के रूप में openpyxl का उपयोग करती हैं, जो इसकी विश्वसनीयता और कार्यक्षमता को दर्शाता है।
openpyxl को इंस्टॉल और इम्पोर्ट करना
pip का उपयोग करके openpyxl को इंस्टॉल करना सरल है:
अपने Python स्क्रिप्ट में openpyxl का उपयोग करने के लिए आवश्यक क्लास इम्पोर्ट करें:
from openpyxl import Workbook, load_workbookसंचालित द्वारा
मुख्य अवधारणाएँ और पारिभाषिक शब्दावली
openpyxl का प्रभावी उपयोग करने के लिए, Excel की बुनियादी संरचना समझें:
Workbook: स्वयं Excel फ़ाइल, जिसमें एक या अधिक वर्कशीट होती हैं
Worksheet: एक वर्कबुक के भीतर व्यक्तिगत टैब/शीट
Cell: वर्कशीट में व्यक्तिगत डेटा बिंदु, जिन्हें कॉलम अक्षर और पंक्ति संख्या से पहचाना जाता है (उदा., "A1")
Row: क्षैतिज कोशिकाओं की पंक्ति, संख्याओं से पहचानी जाती है (1, 2, 3...)
Column: ऊर्ध्वाधर कोशिकाओं का स्तंभ, अक्षरों से पहचाना जाता है (A, B, C...)
openpyxl में, आप कोशिकाओं को इस प्रकार संदर्भित कर सकते हैं:
Excel शैली संदर्भ: sheet[“A1”]
पंक्ति-स्तंभ इंडेक्सिंग: sheet.cell(row=1, column=1) (ध्यान दें: openpyxl 1-आधारित इंडेक्सिंग का उपयोग करता है, 0-आधारित नहीं)
openpyxl के साथ Excel फ़ाइलें पढ़ना
यहाँ एक व्यावहारिक उदाहरण है जो दिखाता है कि Excel फ़ाइल से डेटा कैसे पढ़ें:
वर्कबुक लोड करें और खोजें
from openpyxl import load_workbook
# Load the workbook - use read_only=True for large files
wb = load_workbook('sample.xlsx', read_only=False, data_only=False)# data_only=True reads values instead of formulasसंचालित द्वारा
वैकल्पिक पैरामीटर नियंत्रित करते हैं कि वर्कबुक कैसे लोड होती है:
read_only=True बड़े फ़ाइलों के लिए प्रदर्शन में सुधार करता है लेकिन संपादन क्षमताएँ सीमित करता है
data_only=True फ़ॉर्मूलों के बजाय गणना किए गए मान लौटाता है
डेटा के माध्यम से इटेरेट करें
कई कोशिकाओं को कुशलतापूर्वक प्रोसेस करने के लिए इटरेशन मेथड्स का उपयोग करें:
# Iterate through rowsfor row in sheet.iter_rows(min_row=1, max_row=5, values_only=True):print(row)# Returns a tuple of values# Iterate through columnsfor column in sheet.iter_cols(min_col=1, max_col=3, values_only=True):print(column)# Returns a tuple of values# Access a range of cells
cell_range = sheet["A1:C5"]for row in cell_range:for cell in row:print(cell.value)संचालित द्वारा
Python डेटा संरचनाओं में रूपांतरित करें
आप Excel डेटा को आसानी से Python डेटा संरचनाओं में बदल सकते हैं:
# Convert worksheet data to a list of dictionariesdefsheet_to_dict(sheet):
data =[]
headers =[cell.value for cell in sheet[1]]# First row as headersfor row in sheet.iter_rows(min_row=2, values_only=True):
row_data ={}for key, value inzip(headers, row):
row_data[key]= value
data.append(row_data)return data
# Example usage
data_dict = sheet_to_dict(sheet)print(data_dict)संचालित द्वारा
openpyxl के साथ Excel फ़ाइलें लिखना
openpyxl के साथ Excel फ़ाइलें बनाना और संशोधित करना उतना ही सीधा है।
एक वर्कबुक बनाएँ और बुनियादी डेटा लिखें
from openpyxl import Workbook
# Create a new workbook
wb = Workbook()
sheet = wb.active
# Rename the sheet
sheet.title ="Data"# Write values to cells
sheet["A1"]="Name"
sheet["B1"]="Age"
sheet["C1"]="City"# Add data
data =[["Alice",25,"New York"],["Bob",30,"San Francisco"],["Charlie",35,"Chicago"]]for row_idx, row_data inenumerate(data, start=2):for col_idx, cell_value inenumerate(row_data, start=1):
sheet.cell(row=row_idx, column=col_idx, value=cell_value)# Save the workbook
wb.save("new_workbook.xlsx")संचालित द्वारा
मौजूदा Excel फ़ाइलों में संशोधन करें
from openpyxl import load_workbook
# Load an existing workbook
wb = load_workbook("existing_file.xlsx")
sheet = wb.active
# Modify cell values
sheet["D1"]="Updated Data"
sheet.cell(row=5, column=2).value =42# Save to a new file (to preserve the original)
wb.save("modified_file.xlsx")संचालित द्वारा
डायनेमिक रूप से डेटा जोड़ें
.append() मेथड नई पंक्तियाँ जोड़ना आसान बनाता है:
from openpyxl import Workbook
wb = Workbook()
sheet = wb.active
# Add headers
sheet.append(["Date","Product","Quantity","Price"])# Add multiple rows of data
sales_data =[["2025-04-01","Laptop",5,1200],["2025-04-01","Mouse",10,25],["2025-04-02","Monitor",3,350]]for row in sales_data:
sheet.append(row)
wb.save("sales_report.xlsx")संचालित द्वारा
Excel में फ़ॉर्मैटिंग और स्टाइलिंग
openpyxl सेल फ़ॉर्मैटिंग और स्टाइलिंग के लिए व्यापक विकल्प प्रदान करता है।
फ़ॉन्ट, बॉर्डर और एलाइनमेंट जोड़ें
from openpyxl import Workbook
from openpyxl.styles import Font, Alignment, Border, Side, PatternFill, NamedStyle
wb = Workbook()
sheet = wb.active
# Create a header style
header_style = NamedStyle(name="header_style")
header_style.font = Font(bold=True, size=12, color="FFFFFF")
header_style.fill = PatternFill(fill_type="solid", start_color="366092")
header_style.alignment = Alignment(horizontal="center", vertical="center")
header_style.border = Border(
bottom=Side(border_style="medium", color="000000"),
left=Side(border_style="thin"),
right=Side(border_style="thin"),
top=Side(border_style="thin"))# Add the style to the workbook
wb.add_named_style(header_style)# Apply the style to header row
headers =["ID","Product","Category","Price"]for col_idx, header inenumerate(headers, start=1):
cell = sheet.cell(row=1, column=col_idx, value=header)
cell.style ="header_style"# Basic styling without named styles
sheet["A2"].font = Font(bold=True, italic=True)
sheet["A3"].alignment = Alignment(horizontal="center")
sheet["A4"].border = Border(bottom=Side(border_style="thin"))
wb.save("styled_workbook.xlsx")संचालित द्वारा
कंडीशनल फ़ॉर्मैटिंग
कंडीशनल फ़ॉर्मैटिंग आपको सेल मानों के आधार पर स्टाइल लागू करने देती है:
from openpyxl import Workbook
from openpyxl.styles import Font, PatternFill
from openpyxl.styles.differential import DifferentialStyle
from openpyxl.formatting.rule import Rule, ColorScaleRule
wb = Workbook()
sheet = wb.active
# Add sample datafor row inrange(1,11):for col inrange(1,5):
sheet.cell(row=row, column=col, value=(row-1)*4+ col)# Add color scale (green to red gradient)
color_scale = ColorScaleRule(
start_type="min", start_color="63BE7B",# Green
mid_type="percentile", mid_value=50, mid_color="FFEB84",# Yellow
end_type="max", end_color="F8696B"# Red)
sheet.conditional_formatting.add("A1:D10", color_scale)# Add a rule for values less than 5
red_text = Font(color="FF0000")
red_fill = PatternFill(start_color="FFCCCC", end_color="FFCCCC", fill_type="solid")
dxf = DifferentialStyle(font=red_text, fill=red_fill)
rule = Rule(type="cellIs", operator="lessThan", formula=["5"], dxf=dxf)
sheet.conditional_formatting.add("A1:D10", rule)
wb.save("conditional_format.xlsx")संचालित द्वारा
उन्नत सुविधाएँ
openpyxl कई उन्नत Excel सुविधाओं का समर्थन करता है जो जटिल स्प्रेडशीट कार्यों में मदद करती हैं।
ध्यान दें: load_workbook() का उपयोग करते समय, openpyxl फ़ॉर्मूलों की स्वचालित गणना नहीं करता। गणना किए गए मान देखने के लिए load_workbook(“file.xlsx”, data_only=True) का उपयोग करें।
चार्ट सम्मिलित करें
openpyxl विभिन्न प्रकार के चार्ट बना सकता है:
from openpyxl import Workbook
from openpyxl.chart import BarChart, LineChart, Reference
wb = Workbook()
sheet = wb.active
# Add data
months =["Jan","Feb","Mar","Apr","May"]
values =[30,45,37,50,62]for i,(month, value)inenumerate(zip(months, values), start=1):
sheet.cell(row=i, column=1, value=month)
sheet.cell(row=i, column=2, value=value)# Create a bar chart
bar_chart = BarChart()
bar_chart.title ="Monthly Sales"
bar_chart.x_axis.title ="Month"
bar_chart.y_axis.title ="Sales"# Define the data range
data = Reference(sheet, min_col=2, min_row=1, max_row=5)
categories = Reference(sheet, min_col=1, min_row=1, max_row=5)# Add the data to the chart
bar_chart.add_data(data)
bar_chart.set_categories(categories)# Add the chart to the worksheet
sheet.add_chart(bar_chart,"D1")# Create a line chart on the same data
line_chart = LineChart()
line_chart.title ="Monthly Sales Trend"
line_chart.add_data(data)
line_chart.set_categories(categories)
sheet.add_chart(line_chart,"D15")
wb.save("charts.xlsx")संचालित द्वारा
छवियाँ सम्मिलित करें
from openpyxl import Workbook
from openpyxl.drawing.image import Image
wb = Workbook()
sheet = wb.active
# Add an image
img = Image("logo.png")# Resize the image (optional)
img.width =150
img.height =75# Add the image to cell A1
sheet.add_image(img,"A1")
wb.save("with_image.xlsx")संचालित द्वारा
ध्यान दें: छवियों के साथ काम करने के लिए आपको Pillow लाइब्रेरी इंस्टॉल करनी होगी: pip install pillow
शीट, पंक्ति और स्तंभ प्रबंधन
openpyxl आपकी Excel फ़ाइलों की संरचना प्रबंधित करने के लिए फ़ंक्शन्स प्रदान करता है:
शीट बनाना और हटाना
from openpyxl import Workbook
wb = Workbook()# Create new sheets
wb.create_sheet("Data")
wb.create_sheet("Summary",0)# Add at the beginning# Remove a sheet
wb.remove(wb["Sheet"])# Remove the default sheetprint(wb.sheetnames)# ['Summary', 'Data']
wb.save("multiple_sheets.xlsx")संचालित द्वारा
from openpyxl import Workbook
wb = Workbook()
source = wb.active
source.title ="Original"# Add some data to copy
source["A1"]="Test Data"# Create a copy
wb.copy_worksheet(source)# The copied sheet will have "Copy of Original" name
wb.save("copied_sheet.xlsx")संचालित द्वारा
पंक्तियाँ और स्तंभ जोड़ना व हटाना
from openpyxl import Workbook
wb = Workbook()
sheet = wb.active
# Add some datafor i inrange(1,6):for j inrange(1,4):
sheet.cell(row=i, column=j, value=f"R{i}C{j}")# Insert a row at position 2
sheet.insert_rows(2)# Insert multiple rows
sheet.insert_rows(5,3)# Insert 3 rows at position 5# Insert a column at position 2
sheet.insert_cols(2)# Delete rows
sheet.delete_rows(7,2)# Delete 2 rows starting at row 7# Delete columns
sheet.delete_cols(3)# Delete column C
wb.save("modified_structure.xlsx")संचालित द्वारा
फ्रीज़ पेन और फ़िल्टर जोड़ना
from openpyxl import Workbook
wb = Workbook()
sheet = wb.active
# Add headers
headers =["ID","Name","Department","Salary"]for col_idx, header inenumerate(headers, start=1):
sheet.cell(row=1, column=col_idx, value=header)# Add data
data =[[1,"John Smith","HR",55000],[2,"Jane Doe","IT",65000],[3,"Bob Johnson","Finance",60000]]for row_idx, row_data inenumerate(data, start=2):for col_idx, value inenumerate(row_data, start=1):
sheet.cell(row=row_idx, column=col_idx, value=value)# Freeze the header row
sheet.freeze_panes ="A2"# Add autofilter
sheet.auto_filter.ref ="A1:D4"
wb.save("freeze_and_filter.xlsx")संचालित द्वारा
सीमाएँ और सामुदायिक प्रतिक्रिया
यद्यपि openpyxl सुविधाओं से समृद्ध है, उपयोगकर्ताओं ने कुछ सीमाएँ नोट की हैं:
Named ranges के लिए सीमित समर्थन
उन्नत सुविधाओं के लिए डॉक्यूमेंटेशन उदाहरण कभी-कभी कम मिलते हैं
बहुत बड़ी फ़ाइलों के लिए प्रदर्शन धीमा हो सकता है (हालाँकि read-only मोड मदद करता है)
इन सीमाओं के बावजूद, openpyxl को मज़बूत सामुदायिक समर्थन प्राप्त है। समस्याएँ GitLab ट्रैकर पर रिपोर्ट की जा सकती हैं, और पेशेवर सहायता कभी-कभी उपलब्ध होती है। अधिक जानकारी और सहायता के लिए, आप निम्न संदर्भ देख सकते हैं:
openpyxl Python-आधारित Excel ऑटोमेशन के लिए एक स्थापित लाइब्रेरी है, जो Excel फ़ाइलों को पढ़ने, लिखने और स्टाइल करने का पूर्ण समर्थन देती है। यह स्वचालित वर्कफ़्लोज़ में स्प्रेडशीट आउटपुट पर विस्तृत नियंत्रण सक्षम करती है—व्यक्तिगत कोशिकाओं में बदलाव से लेकर चार्ट बनाने और जटिल फ़ॉर्मैटिंग लागू करने तक।
जो उपयोगकर्ता प्रोग्रामैटिक रूप से Excel फ़ाइलें जनरेट या विश्लेषित करना चाहते हैं, विशेषकर रिपोर्ट बनाने या टैबुलर डेटा प्रोसेस करने के दौरान, उनके लिए openpyxl एक व्यापक टूलकिट प्रदान करता है। Excel इंस्टॉलेशन की आवश्यकता के बिना काम करने की इसकी क्षमता इसे सर्वर वातावरण और स्वचालित डेटा पाइपलाइनों के लिए विशेष रूप से मूल्यवान बनाती है।
चाहे आप वित्तीय मॉडल बना रहे हों, डेटा का विश्लेषण कर रहे हों, या रिपोर्ट जनरेट कर रहे हों—openpyxl आपको Python कोड के माध्यम से Excel फ़ाइलों को कुशलतापूर्वक संभालने के उपकरण देता है।
विनोद चुगानी ने टोक्यो में जेपीमॉर्गन के सबसे कम उम्र के हेज फंड सेल्स डेस्क हेड के रूप में अपना करियर शुरू किया और बाद में लेहमन ब्रदर्स में व्यक्तिगत बिक्री का रिकॉर्ड बनाया, फिर 30 देशों में फैला एक इलेक्ट्रॉनिक्स डिस्ट्रीब्यूशन व्यवसाय बनाया, जिसकी आय SG$100 मिलियन से आगे बढ़ी, इसके बाद उन्होंने डेटा की ओर रुख किया। ड्यूक में अर्थशास्त्र के स्नातक और NYC डेटा साइंस अकादमी के पूर्व छात्र, वे मेवन पर ह्यूगो बोव्न-एंडरसन के Building AI Applications कोर्स के लिए 100+ आवेदनों में से तीन छात्रवृत्ति प्राप्तकर्ताओं में से एक थे। आज, वे DataCamp, KDnuggets, Machine Learning Mastery, और Statology के लिए सांख्यिकी से लेकर एजेंटिक एआई तक के विषयों पर लिखते हैं, और NYC डेटा साइंस अकादमी में डेटा प्रोफेशनलों को मेंटर करते हैं, उनके नाम पर 1,000 से अधिक एक-से-एक सत्र हैं।
openpyxl FAQs
openpyxl किन फ़ाइल प्रकारों का समर्थन करता है?⌄
openpyxl कई Excel फ़ॉर्मैट्स का समर्थन करता है, जिनमें .xlsx, .xlsm, .xltx, और xltm शामिल हैं। यह Excel 2003 और उससे पहले उपयोग किए गए पुराने .xls फ़ॉर्मैट का समर्थन नहीं करता।
क्या openpyxl Excel फ़ॉर्मूलों को पढ़ और इवैल्युएट कर सकता है?⌄
openpyxl फ़ॉर्मूले पढ़ और लिख सकता है, लेकिन उन्हें इवैल्युएट नहीं करता। फ़ॉर्मूला परिणाम देखने के लिए, फ़ाइल को पहले Excel में खोलकर सेव करना होगा।
क्या openpyxl उपयोग करने के लिए मुझे Microsoft Excel इंस्टॉल करना होगा?⌄
नहीं, openpyxl पूरी तरह Python में काम करता है और आपकी मशीन पर Excel इंस्टॉल होने की आवश्यकता नहीं होती।
क्या मैं openpyxl के साथ Excel में छवियाँ डाल सकता/सकती हूँ?⌄
हाँ, लेकिन आपके पास Pillow लाइब्रेरी इंस्टॉल होनी चाहिए, और add_image() कॉल करते समय इमेज फ़ाइल डिस्क पर मौजूद होनी चाहिए।
क्या openpyxl बड़े Excel फ़ाइलों के लिए उपयुक्त है?⌄
हाँ, विशेष रूप से read_only=True मोड का उपयोग करते समय, जो बड़े स्प्रेडशीट्स पढ़ने के लिए प्रदर्शन में सुधार करता है।
openpyxl एक कुशल Python लाइब्रेरी है जो आपको Excel 2007 में पेश किए गए आधुनिक XML-आधारित फ़ॉर्मैट्स (.xlsx, .xlsm) में Excel फ़ाइलें पढ़ने और लिखने में सक्षम बनाती है, और Excel 2010 से आगे की उन्नत सुविधाओं का पूरा समर्थन देती है। इसे मूल रूप से PHPExcel का Python पोर्ट के रूप में विकसित किया गया था और आज भी सक्रिय डेवलपर समुदाय द्वारा मेंटेन किया जा रहा है। यह लाइब्रेरी डेटा ऑटोमेशन, रिपोर्टिंग और फ़ॉर्मैटिंग वर्कफ़्लोज़ में बेहतरीन है, जिससे यह विशेष रूप से उन उपयोगकर्ताओं के लिए उपयोगी है जिन्हें Excel फ़ाइलों के साथ काम करना होता है, भले ही उनके सिस्टम पर Excel इंस्टॉल न हो।
कई संगठन openpyxl का उपयोग वित्तीय रिपोर्टों को स्वचालित करने, डेटाबेस एक्सपोर्ट से चार्ट जनरेट करने, और मार्केटिंग रिपोर्टों में फ़ॉर्मूले व फ़ॉर्मैटिंग लागू करने के लिए करते हैं। यह लाइब्रेरी केवल Python कोड के माध्यम से Excel फ़ाइलों पर सूक्ष्म-स्तरीय नियंत्रण प्रदान करती है।
openpyxl क्या है?
openpyxl विशेष रूप से Excel 2010+ फ़ॉर्मैट्स के लिए नैटिव समर्थन प्रदान करने के लिए डिज़ाइन किया गया है। यह लाइब्रेरी कई फ़ाइल फ़ॉर्मैट्स के साथ काम करती है:
.xlsx- Excel वर्कबुक.xlsm- मैक्रोज़ वाली Excel वर्कबुक.xltx- Excel टेम्पलेट.xltm- मैक्रोज़ वाला Excel टेम्पलेटopenpyxl का एक बड़ा लाभ यह है कि इसे आपके कंप्यूटर पर Excel इंस्टॉल होने की आवश्यकता नहीं होती। यह सर्वर वातावरण, स्वचालित रिपोर्टिंग सिस्टम और डेटा प्रोसेसिंग पाइपलाइनों के लिए आदर्श बनाता है। कई अन्य Python लाइब्रेरियाँ, जिनमें pandas भी शामिल है, Excel इंटरफ़ेस के रूप में openpyxl का उपयोग करती हैं, जो इसकी विश्वसनीयता और कार्यक्षमता को दर्शाता है।
openpyxl को इंस्टॉल और इम्पोर्ट करना
pip का उपयोग करके openpyxl को इंस्टॉल करना सरल है:
अविश्वसनीय स्रोतों से फ़ाइलों के साथ काम करते समय सुरक्षा बढ़ाने के लिए, आप वैकल्पिक
defusedxmlपैकेज भी इंस्टॉल कर सकते हैं:अपने Python स्क्रिप्ट में openpyxl का उपयोग करने के लिए आवश्यक क्लास इम्पोर्ट करें:
मुख्य अवधारणाएँ और पारिभाषिक शब्दावली
openpyxl का प्रभावी उपयोग करने के लिए, Excel की बुनियादी संरचना समझें:
openpyxl में, आप कोशिकाओं को इस प्रकार संदर्भित कर सकते हैं:
Excel शैली संदर्भ:
sheet[“A1”]पंक्ति-स्तंभ इंडेक्सिंग:
sheet.cell(row=1, column=1)(ध्यान दें: openpyxl 1-आधारित इंडेक्सिंग का उपयोग करता है, 0-आधारित नहीं)openpyxl के साथ Excel फ़ाइलें पढ़ना
यहाँ एक व्यावहारिक उदाहरण है जो दिखाता है कि Excel फ़ाइल से डेटा कैसे पढ़ें:
वर्कबुक लोड करें और खोजें
वैकल्पिक पैरामीटर नियंत्रित करते हैं कि वर्कबुक कैसे लोड होती है:
read_only=Trueबड़े फ़ाइलों के लिए प्रदर्शन में सुधार करता है लेकिन संपादन क्षमताएँ सीमित करता हैdata_only=Trueफ़ॉर्मूलों के बजाय गणना किए गए मान लौटाता हैडेटा के माध्यम से इटेरेट करें
कई कोशिकाओं को कुशलतापूर्वक प्रोसेस करने के लिए इटरेशन मेथड्स का उपयोग करें:
Python डेटा संरचनाओं में रूपांतरित करें
आप Excel डेटा को आसानी से Python डेटा संरचनाओं में बदल सकते हैं:
openpyxl के साथ Excel फ़ाइलें लिखना
openpyxl के साथ Excel फ़ाइलें बनाना और संशोधित करना उतना ही सीधा है।
एक वर्कबुक बनाएँ और बुनियादी डेटा लिखें
मौजूदा Excel फ़ाइलों में संशोधन करें
डायनेमिक रूप से डेटा जोड़ें
.append()मेथड नई पंक्तियाँ जोड़ना आसान बनाता है:Excel में फ़ॉर्मैटिंग और स्टाइलिंग
openpyxl सेल फ़ॉर्मैटिंग और स्टाइलिंग के लिए व्यापक विकल्प प्रदान करता है।
फ़ॉन्ट, बॉर्डर और एलाइनमेंट जोड़ें
कंडीशनल फ़ॉर्मैटिंग
कंडीशनल फ़ॉर्मैटिंग आपको सेल मानों के आधार पर स्टाइल लागू करने देती है:
उन्नत सुविधाएँ
openpyxl कई उन्नत Excel सुविधाओं का समर्थन करता है जो जटिल स्प्रेडशीट कार्यों में मदद करती हैं।
फ़ॉर्मूले जोड़ना
ध्यान दें:
load_workbook()का उपयोग करते समय, openpyxl फ़ॉर्मूलों की स्वचालित गणना नहीं करता। गणना किए गए मान देखने के लिएload_workbook(“file.xlsx”, data_only=True)का उपयोग करें।चार्ट सम्मिलित करें
openpyxl विभिन्न प्रकार के चार्ट बना सकता है:
छवियाँ सम्मिलित करें
ध्यान दें: छवियों के साथ काम करने के लिए आपको Pillow लाइब्रेरी इंस्टॉल करनी होगी:
pip install pillowशीट, पंक्ति और स्तंभ प्रबंधन
openpyxl आपकी Excel फ़ाइलों की संरचना प्रबंधित करने के लिए फ़ंक्शन्स प्रदान करता है:
शीट बनाना और हटाना
शीट का नाम बदलना
वर्कशीट्स की कॉपी करना
पंक्तियाँ और स्तंभ जोड़ना व हटाना
फ्रीज़ पेन और फ़िल्टर जोड़ना
सीमाएँ और सामुदायिक प्रतिक्रिया
यद्यपि openpyxl सुविधाओं से समृद्ध है, उपयोगकर्ताओं ने कुछ सीमाएँ नोट की हैं:
इन सीमाओं के बावजूद, openpyxl को मज़बूत सामुदायिक समर्थन प्राप्त है। समस्याएँ GitLab ट्रैकर पर रिपोर्ट की जा सकती हैं, और पेशेवर सहायता कभी-कभी उपलब्ध होती है। अधिक जानकारी और सहायता के लिए, आप निम्न संदर्भ देख सकते हैं:
निष्कर्ष
openpyxl Python-आधारित Excel ऑटोमेशन के लिए एक स्थापित लाइब्रेरी है, जो Excel फ़ाइलों को पढ़ने, लिखने और स्टाइल करने का पूर्ण समर्थन देती है। यह स्वचालित वर्कफ़्लोज़ में स्प्रेडशीट आउटपुट पर विस्तृत नियंत्रण सक्षम करती है—व्यक्तिगत कोशिकाओं में बदलाव से लेकर चार्ट बनाने और जटिल फ़ॉर्मैटिंग लागू करने तक।
जो उपयोगकर्ता प्रोग्रामैटिक रूप से Excel फ़ाइलें जनरेट या विश्लेषित करना चाहते हैं, विशेषकर रिपोर्ट बनाने या टैबुलर डेटा प्रोसेस करने के दौरान, उनके लिए openpyxl एक व्यापक टूलकिट प्रदान करता है। Excel इंस्टॉलेशन की आवश्यकता के बिना काम करने की इसकी क्षमता इसे सर्वर वातावरण और स्वचालित डेटा पाइपलाइनों के लिए विशेष रूप से मूल्यवान बनाती है।
चाहे आप वित्तीय मॉडल बना रहे हों, डेटा का विश्लेषण कर रहे हों, या रिपोर्ट जनरेट कर रहे हों—openpyxl आपको Python कोड के माध्यम से Excel फ़ाइलों को कुशलतापूर्वक संभालने के उपकरण देता है।