fx Python for Excel
ENहिन्दी

openpyxl बनाम pandas बनाम xlwings — कब कौन-सा

⏱ 15 min

आप क्या सीखेंगे

  • सेटअप (एक बार)
  • तीन लाइब्रेरी
  • ये साथ कैसे काम करते हैं

समझिए

1. सेटअप (एक बार)

  1. python.org से Python 3.11 या नया इंस्टॉल करें (Windows: Add python.exe to PATH टिक करें)।
  2. अपने प्रोजेक्ट फ़ोल्डर में टर्मिनल (Command Prompt / PowerShell / Terminal) खोलें।
  3. वर्चुअल एनवायरनमेंट बनाएँ, ताकि हर प्रोजेक्ट की अपनी लाइब्रेरी हों:
python -m venv .venv
# Windows
.venv\Scripts\activate
# Mac / Linux
source .venv/bin/activate

pip install pandas openpyxl xlwings
  1. स्क्रिप्ट लिखने और चलाने के लिए VS Code (Python एक्सटेंशन के साथ) इस्तेमाल करें।

2. तीन लाइब्रेरी

pandas openpyxl xlwings
इसे ऐसे समझें Excel का डेटा दिमाग़ — फ़िल्टर, ग्रुप, मर्ज Excel फ़ाइल एडिटर Excel ऐप का रिमोट कंट्रोल
Excel इंस्टॉल होना ज़रूरी? नहीं नहीं हाँ (Windows या Mac)
ताक़त तेज़ डेटा विश्लेषण, लाखों रो फ़ॉर्मेटिंग, फ़ॉर्मूले, चार्ट, कई शीट खुली वर्कबुक के साथ काम, VBA चलाना, बटन से Python चलाना
कमज़ोरी फ़ॉर्मेटिंग पर कंट्रोल नहीं भारी डेटा विश्लेषण में धीमा; फ़ॉर्मूले की गणना नहीं करता Excel चाहिए; सर्वर के लिए नहीं
सर्वर / GitHub Actions पर चलता है ✅ ✅ ❌

3. ये साथ कैसे काम करते हैं

सबसे आम तरीका:

pandas reads + cleans + summarises  →  pandas writes the sheets  →  openpyxl formats them

pandas असल में .xlsx पढ़ने-लिखने के लिए पर्दे के पीछे openpyxl ही इस्तेमाल करता है।

4. चुनना — झटपट गाइड

काम इस्तेमाल करें
50 CSV जोड़कर रीजन के हिसाब से टोटल pandas
हेडर बोल्ड, कॉलम चौड़ाई, चार्ट जोड़ना openpyxl
पहले से फ़ॉर्मेट किया इनवॉइस टेम्पलेट भरना openpyxl
यूज़र की अभी खुली शीट पढ़ना, नतीजे लाइव वापस लिखना xlwings
Excel में बटन जो Python स्क्रिप्ट चलाए xlwings
सर्वर पर रोज़ रात की शेड्यूल रिपोर्ट pandas + openpyxl

5. हर एक की झलक

import pandas as pd
df = pd.read_excel("sales.xlsx")
print(df.groupby("Region")["Amount"].sum())
from openpyxl import load_workbook
from openpyxl.styles import Font
wb = load_workbook("sales.xlsx")
ws = wb.active
ws["A1"].font = Font(bold=True)
wb.save("sales.xlsx")
import xlwings as xw
wb = xw.Book("sales.xlsx")          # opens it in Excel
print(wb.sheets[0]["A1"].value)

6. openpyxl के बारे में दो ज़रूरी बातें

  • यह फ़ॉर्मूले की गणना नहीं करता। =SUM(B2:B10) सही लिखता है, और फ़ाइल खुलने पर Excel गणना करता है। load_workbook(path, data_only=True) से पढ़ने पर वह वैल्यू मिलती है जो Excel ने पिछली बार सेव की थी (अगर फ़ाइल कभी Excel में नहीं खुली तो खाली)।
  • यह सिर्फ़ .xlsx/.xlsm के साथ चलता है, पुरानी .xls के साथ नहीं (उनके लिए xlrd पैकेज के साथ pandas.read_excel इस्तेमाल करें)।

7. "Python in Excel" का क्या?

Microsoft 365 में =PY() फ़ंक्शन है जो Microsoft के क्लाउड में, सेल के अंदर Python चलाता है। वर्कबुक के अंदर विश्लेषण के लिए बढ़िया है, पर यह आपकी लोकल फ़ाइलें नहीं पढ़ सकता, ईमेल नहीं भेज सकता, शेड्यूल पर नहीं चल सकता। ऑटोमेशन के लिए इस मॉड्यूल की लाइब्रेरी ही चाहिए।

आम गलतियाँ

वर्चुअल एनवायरनमेंट एक्टिवेट किए बिना लाइब्रेरी इंस्टॉल करना। सर्वर पर चलने वाली स्क्रिप्ट के लिए xlwings इस्तेमाल करना। openpyxl से फ़ॉर्मूले के नतीजे की उम्मीद करना।

अभ्यास

mediumवर्चुअल एनवायरनमेंट बनाएँ और तीनों लाइब्रेरी इंस्टॉल करें। कुछ रो वाली sales.xlsx बनाएँ, फिर ऊपर के तीनों स्निपेट चलाएँ और लिखें कि हर एक ने क्या किया।
venv में requirements.txt install करें। Desktop Excel वाले computer पर xlwings अलग से install करें। Sales की copy sales.xlsx बनाएँ। pandas DataFrame पढ़े, openpyxl saved workbook बदले और xlwings खुले Excel को control करे। xlwings desktop अभ्यास Windows/macOS और Excel माँगता है; headless Linux में नहीं चलेगा।

प्रश्नोत्तरी

किस लाइब्रेरी को Excel इंस्टॉल चाहिए?
xlwings
5 लाख रो को ग्रुप करके टोटल करने के लिए सबसे अच्छी?
pandas
क्या openpyxl फ़ॉर्मूले की गणना करता है?
नहीं — फ़ाइल खुलने पर Excel करता है
openpyxl बनाम pandas बनाम xlwings — कब कौन-सा · हिंदी | ExcelWalaa