Python Academy · पाठ

csv.DictWriter से CSV लिखना

DictReader और DictWriter का उपयोग करके संरचित डेटा CSV में लिखें।

पाठ 4, कुल 4 में से14 चरण

csv.DictWriter से CSV लिखना, CoddyKit पर Python Academy का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Python Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

परिचय

csv.writer और csv.DictWriter Python डेटा को CSV प्रारूप में लिखते हैं तथा उद्धरण और विभाजकों को स्वचालित रूप से संभालते हैं।

csv.writer की मूल बातें

csv.writer(f).writerow(row) एक पंक्ति लिखता है। writerows(rows) कई पंक्तियाँ लिखता है।
import csv, io
buf = io.StringIO()
writer = csv.writer(buf)
writer.writerow(['name', 'age'])
writer.writerow(['Alice', 30])
print(buf.getvalue())

उद्धरण का व्यवहार

डिफ़ॉल्ट रूप से, कॉमा या उद्धरण वाली फ़ील्ड को स्वचालित रूप से उद्धृत किया जाता है। quoting=csv.QUOTE_ALL प्रत्येक फ़ील्ड को उद्धृत करता है।
import csv, io
buf = io.StringIO()
writer = csv.writer(buf, quoting=csv.QUOTE_ALL)
writer.writerow(['Alice', 'NYC, NY', 30])
print(buf.getvalue())

csv.DictWriter

DictWriter dict को पंक्तियों के रूप में लिखता है। fieldnames निर्दिष्ट करें। writeheader() कॉलम हेडर लिखता है।
import csv, io
buf = io.StringIO()
fields = ['name', 'age']
writer = csv.DictWriter(buf, fieldnames=fields)
writer.writeheader()
writer.writerow({'name': 'Alice', 'age': 30})
print(buf.getvalue())

कई पंक्तियों के लिए writerows()

लूप में writerow() को बार-बार कॉल करने की तुलना में writer.writerows(list_of_rows) अधिक दक्ष होता है।
import csv, io
buf = io.StringIO()
writer = csv.DictWriter(buf, fieldnames=['x','y'])
writer.writeheader()
writer.writerows([{'x':1,'y':2},{'x':3,'y':4}])
print(buf.getvalue())

कस्टम विभाजक

csv.writer(f, delimiter='\t') टैब से अलग किए गए मान (TSV) लिखता है।
import csv, io
buf = io.StringIO()
writer = csv.writer(buf, delimiter='\t')
writer.writerow(['a', 'b', 'c'])
print(repr(buf.getvalue()))

extrasaction पैरामीटर

DictWriter(f, fieldnames, extrasaction='ignore') ValueError उत्पन्न करने के बजाय dict में मौजूद अतिरिक्त कुंजियों को चुपचाप अनदेखा करता है।
import csv, io
buf = io.StringIO()
w = csv.DictWriter(buf, fieldnames=['name'], extrasaction='ignore')
w.writeheader()
w.writerow({'name': 'Alice', 'extra': 'ignored'})
print(buf.getvalue())

वास्तविक फ़ाइल में लिखना

with open('out.csv','w',newline='',encoding='utf-8') as f:—हमेशा newline='' का उपयोग करें और एन्कोडिंग निर्दिष्ट करें।
import csv, tempfile, os
tmp = tempfile.mktemp(suffix='.csv')
with open(tmp, 'w', newline='') as f:
    csv.writer(f).writerows([[1,2],[3,4]])
print(open(tmp).read())
os.unlink(tmp)

CSV में जोड़ना

open(file, 'a') नई सामग्री जोड़ता है। जोड़ते समय हेडर को दोबारा न लिखने का ध्यान रखें।
import csv, io
buf = io.StringIO()
w = csv.writer(buf)
w.writerow(['x', 'y'])
print(buf.getvalue())

बड़ी मात्रा में स्ट्रीम करके लिखना

पंक्ति-दर-पंक्ति लिखें—लिखने से पहले सभी पंक्तियों को मेमोरी में इकट्ठा न करें।
import csv, io
buf = io.StringIO()
writer = csv.writer(buf)
for i in range(5):
    writer.writerow([i, i**2])
print(buf.getvalue())

राउंड-ट्रिप परीक्षण

शुद्धता की जाँच करने के लिए डेटा को CSV में लिखें और फिर उसे वापस पढ़ें।
import csv, io
original = [{'name':'Alice','age':'30'},{'name':'Bob','age':'25'}]
buf = io.StringIO()
w = csv.DictWriter(buf, fieldnames=['name','age'])
w.writeheader()
w.writerows(original)
buf.seek(0)
read_back = list(csv.DictReader(buf))
print(read_back == original)

त्वरित जाँच

कौन-सी DictWriter विधि कॉलम के नामों को पहली पंक्ति के रूप में लिखती है?

पुनरावृत्ति

csv.writer: writerow/writerows। DictWriter: writeheader + writerow/writerows। हमेशा newline='' के साथ खोलें। लचीले dict के लिए extrasaction='ignore' का उपयोग करें।

आगे बढ़ते रहें

इसी तरह अच्छा करते रहें! अगले पाठ पर जाएँ।
शुरुआत निःशुल्क

एआई शिक्षक के साथ Python सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
76
पाठ
320

अक्सर पूछे जाने वाले प्रश्न

क्या “csv.DictWriter से CSV लिखना” पाठ निःशुल्क है?

हाँ—“csv.DictWriter से CSV लिखना” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Python Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“csv.DictWriter से CSV लिखना” में मैं क्या सीखूँगा?

DictReader और DictWriter का उपयोग करके संरचित डेटा CSV में लिखें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Python Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Python Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Python Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।

“csv.DictWriter से CSV लिखना” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Python Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Python Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. JSON एन्कोडिंग और डिकोडिंग
  2. नेस्टेड JSON संरचनाएँ संभालना
  3. csv.reader से CSV पढ़ना
  4. csv.DictWriter से CSV लिखना
← Python Academy पर वापस जाएँ