Python File Handling in Marathi — सविस्तर मार्गदर्शक (Complete Tutorial)

रुपेश पवार

Python मध्ये file handling म्हणजे काय, open() function कसं वापरायचं, file read / write / append कशी करायची आणि with statement व exception handling वापरून सुरक्षित code कसा लिहायचा हे सर्व सोप्या मराठी भाषेत, प्रॅक्टिकल उदाहरणांसह.

Python शिकताना आपण आतापर्यंत Variables, Loops, Conditional Statements आणि Functions शिकलो. पण खरं प्रोग्रामिंग तेव्हा सुरू होतं जेव्हा आपला प्रोग्राम data कायमस्वरूपी साठवतो आणि यासाठी लागतं File Handling. या लेखात आपण Python File Handling संपूर्ण, सुरुवातीपासून शेवटपर्यंत, मराठीत शिकणार आहोत.

File Handling म्हणजे प्रोग्रामच्या मदतीने एखादी file तयार करणे, ती उघडणे (open करणे), त्यातील data वाचणे (read करणे), नवीन data लिहिणे (write करणे) आणि शेवटी ती file बंद (close) करणे या सर्व क्रियांना एकत्रितपणे File Handling म्हणतात. सोप्या भाषेत सांगायचं तर, आपला Python प्रोग्राम आणि आपल्या computer च्या storage मधील file यांच्यामध्ये data ची देवाणघेवाण (data flow) सुरक्षितपणे आणि व्यवस्थित पद्धतीने घडवून आणणं, हेच File Handling चं मुख्य काम आहे.

  • Data कायमस्वरूपी साठवण्यासाठी: प्रोग्राम बंद झाला तरी data नष्ट होऊ नये यासाठी.
  • External files सोबत काम करण्यासाठी: .txt, .csv, .json यासारख्या files मधील माहिती वापरण्यासाठी.
  • मोठ्या data चं efficient management: संपूर्ण data एकाच वेळी memory मध्ये न ठेवता, हवा तेवढाच भाग वाचता येतो.
  • Automation साठी: config files वाचणं, logs साठवणं, reports generate करणं यासारखी कामं आपोआप करण्यासाठी.

Python मध्ये कोणतीही file उघडण्यासाठी built-in open() function वापरलं जातं. या function ला file चं नाव (किंवा path) आणि mode हे दोन arguments दिले जातात.

file = open('filename.txt', 'mode')

  • filename.txt — जी file उघडायची आहे तिचं नाव किंवा संपूर्ण path.
  • mode — file कोणत्या प्रकारे उघडायची आहे (फक्त वाचण्यासाठी, लिहिण्यासाठी, जोडण्यासाठी इ.)

लक्षात ठेवा: जर mode दिला नाही, तर Python आपोआप 'r' (read mode) वापरतो.

f = open("data.txt", "r") print(f)

वरील code data.txt ही file read mode मध्ये उघडतो. जर file अस्तित्वात असेल, तर तो त्या file शी जोडलेला एक file object return करतो; file नसेल तर Python FileNotFoundError ही error देतो.

वरील code data.txt ही file read mode मध्ये उघडतो. जर file अस्तित्वात असेल, तर तो त्या file शी जोडलेला एक file object return करतो; file नसेल तर Python FileNotFoundError ही error देतो.

Modeपूर्ण नावउपयोग
rReadफक्त वाचण्यासाठी (default). File नसेल तर error येते.
wWriteलिहिण्यासाठी. File नसेल तर नवीन तयार होते; असेल तर जुना content पूर्ण मिटतो.
aAppendशेवटी नवीन data जोडण्यासाठी. जुना content कायम राहतो.
r+Read + Writeवाचणे आणि लिहिणे दोन्ही; file अस्तित्वात असावी लागते.
w+Write + Readलिहिणे व वाचणे; जुना content मिटतो.
a+Append + Readजोडणे व वाचणे; जुना content कायम राहतो.
rb / wbBinary Read/Writeimages, pdf यासारख्या binary files साठी.

file.close() ही method file बंद करते आणि त्यासाठी वापरलेले system resources मोकळे करते. जर file write किंवा append mode मध्ये उघडली असेल, तर close() केल्यावरच सर्व बदल (changes) व्यवस्थित save होतात याची खात्री होते.

file = open("data.txt", "r") # file वर काम करा file.close()

File उघडल्यानंतर ती close न केल्यास memory leak आणि data corruption सारख्या समस्या येऊ शकतात. पुढे आपण with statement शिकणार आहोत, जे हे काम आपोआप करतं.

File उघडल्यानंतर तिच्याबद्दलची काही महत्त्वाची माहिती आपण तपासू शकतो:

f = open("data.txt", "r") print("Filename:", f.name) print("Mode:", f.mode) print("Is Closed?", f.closed) f.close() print("Is Closed?", f.closed)

Filename: data.txt Mode: r Is Closed? False Is Closed? True

  • f.name: उघडलेल्या file चं नाव देतं.
  • f.mode: file कोणत्या mode मध्ये उघडली आहे ते सांगतं.
  • f.closed: file बंद आहे की उघडी आहे हे Boolean मध्ये (True/False) सांगतं.

File मधील content वाचण्यासाठी तीन प्रमुख methods वापरल्या जातात:

file = open("data.txt", "r") content = file.read() print(content) file.close()

file = open("data.txt", "r") print(file.readline()) # पहिली ओळ print(file.readline()) # दुसरी ओळ file.close()

file = open("data.txt", "r") lines = file.readlines() print(lines) file.close()

मोठ्या files साठी संपूर्ण content एकदम read() ने वाचण्याऐवजी, ओळीओळीने (for line in file:) वाचणं जास्त memory-efficient असतं.

"w" mode वापरून file मध्ये data लिहिता येतो. ही file अस्तित्वात नसेल तर नवीन तयार होते, आणि असेल तर जुना content पूर्णपणे मिटून नवीन content लिहिला जातो.

with open("data.txt", "w") as file: file.write("Namaste, Python!\n") file.write("File handling Python madhe khup sope aahe.") print("File successfully written")

File successfully written

with open("data.txt", "a") as file: file.write("\nHi appended line.")

write() single string लिहिण्यासाठी वापरतात, तर multiple lines एकाच वेळी लिहायच्या असल्यास writelines() (list of strings) वापरतात.

File manually उघडून, काम करून, शेवटी close() करणं ऐवजी with statement वापरणं ही आजची best practice आहे. with statement वापरल्यास file आपोआप बंद होते जरी मध्येच एखादी error आली तरीही. यामुळे file corruption आणि resource leakage चा धोका खूप कमी होतो.

with open("data.txt", "r") as file: content = file.read() print(content) # इथे file आपोआप बंद झालेली असते

Google आणि Python community दोघेही file handling साठी with statement वापरण्याची शिफारस करतात — कारण ते readable, safe आणि error-proof आहे.

कधी कधी file अस्तित्वातच नसते, किंवा वाचताना काही अडचण येते. अशावेळी प्रोग्राम क्रॅश होऊ नये आणि file नेहमी नीट बंद व्हावी यासाठी try / except / finally वापरतात.

try: file = open("data.txt", "r") content = file.read() print(content) except FileNotFoundError as e: print("Error:", e) finally: file.close()

  • try block मध्ये error येण्याची शक्यता असलेला code असतो.
  • except block FileNotFoundError सारख्या specific errors handle करतो.
  • finally block मध्ये लिहिलेला code error आली तरीही नक्की चालतो – त्यामुळे file नेहमी बंद होते याची खात्री होते.
  • शक्यतो नेहमी with statement वापरा — manual close() विसरण्याची शक्यता राहत नाही.
  • File अस्तित्वात आहे की नाही याची खात्री करण्यासाठी try/except वापरा.
  • मोठ्या files साठी read() ऐवजी for line in file: वापरा.
  • Binary files (images, pdf) साठी "rb" / "wb" mode वापरा.

Problem 1: एक Python program लिहा जो user कडून त्याचं नाव विचारेल आणि "names.txt" file मध्ये append mode मध्ये साठवेल.

Problem 2: with statement वापरून एक file वाचा आणि त्यातील एकूण ओळींची संख्या (line count) print करा.

Problem 3: try/except वापरून अशी file उघडा जी अस्तित्वात नाही, आणि योग्य error message दाखवा.

Problem 4: एका file मधील सर्व शब्द (words) मोजणारा (word count) program लिहा.

Frequently Asked Questions (FAQ)

Q1. Python मध्ये file handling म्हणजे नक्की काय?

Ans: File handling म्हणजे Python प्रोग्रामच्या मदतीने file तयार करणे, उघडणे, वाचणे, लिहिणे आणि बंद करणे या क्रिया करणे — जेणेकरून data कायमस्वरूपी साठवता येतो.

Q2. Python मध्ये file उघडण्यासाठी कोणतं function वापरतात?

Ans: Python चं built-in open() function वापरून file उघडली जाते. यासाठी filename आणि mode हे दोन arguments लागतात.

Q3. with statement वापरण्याचा फायदा काय?

Ans: with statement वापरल्यास file वापरून झाल्यावर ती आपोआप बंद होते, जरी error आली तरीही — त्यामुळे manually close() लिहिण्याची गरज पडत नाही.

Q4. “w” आणि “a” mode मध्ये काय फरक आहे?

Ans: “w” mode जुना content मिटवून नवीन content लिहितो, तर “a” mode जुना content कायम ठेवून शेवटी नवीन data जोडतो (append करतो).

Q5. File अस्तित्वात नसेल तर काय error येते?

Ans: Read mode (“r”) मध्ये file अस्तित्वात नसल्यास Python FileNotFoundError ही exception देतो.

Q6. read(), readline() आणि readlines() मध्ये फरक काय?

Ans: read() संपूर्ण content एकत्र वाचतो, readline() एका वेळी एक ओळ वाचतो, तर readlines() सर्व ओळी एका list मध्ये वाचतो.

File Handling शिकल्यानंतर पुढे Exception Handling सखोल पद्धतीने, तसेच Python Database (SQLite/MySQL) कसं वापरायचं हे शिकणं उपयुक्त ठरेल.

Blogger Vinita

Blogger Rupesh

माझं नाव रुपेश आहे, आणि मी एक Blogger तसेच Content Writer आहे. मी माझा ब्लॉगिंगचा प्रवास वयाच्या ३० व्या वर्षी सुरू केला आणि आज मला या क्षेत्रात ५ वर्षांचा अनुभव आहे.माझा ब्लॉग “Learn Grow” मराठी भाषेत असून, त्यावर मी Blogging, Education, Programming शिकणे आणि AI Tools यांसारख्या महत्त्वाच्या विषयांवर सोप्या आणि समजण्यासारख्या भाषेत माहिती शेअर करतो. यासोबतच, मी Freelancing Services देखील प्रदान करतो, ज्यामध्ये Content Writing, SEO आणि Digital Marketing संबंधित कामांचा समावेश आहे.

Scroll to Top