ফাইল এবং আরও ফাইল (পর্ব-১৫)


ফাইল নিয়ে কাজ শুরু করতে হলে ফাইলটি কোথায় সেভ আছে বা করতে হবে তা দেখিয়ে দিতে হবে। দেখুন: file=open(“test.txt”,”w”)

এটি কোথায় আছে তা দেখতে চাইলে স্টার্ট মেনু থেকে রান কমান্ডে যান এবং টাইপ করুন: %userprofile%, দেখতে পারবেন যে ফোল্ডারটি দেখাচ্ছে সেখানে test নামে একটি টেক্সট ফাইল রয়েছে। এখানে দেখুন শুধু ফাইলের নাম দেওয়া আছে, আপনি চাইলে কোন ড্রাইভের কোন ফোল্ডারে সেভ হবে তা নির্দিষ্ট করে দিতে পারেন। যেমন:

f1=open (“C:/Python33/test.txt”,”w”)

দেখতে পাবেন C: ড্রাইভের Python33 নামক ফোল্ডারে টেক্সট ফাইলটি রয়েছে। দ্বিতীয় প্যারামিটারটি লক্ষ করুন। গত পর্বে বলেছিলাম w হচ্ছে যখন ফাইলে কিছু লিখবেন এবং r যখন ফাইলের ভেতরের লেখা পড়বেন। ফাইলে কাজ করার জন্য পাইথন পয়েন্টার ব্যবহার করে। পয়েন্টারের বৈশিষ্ট্য হচ্ছে এটি কোনো অক্ষর বা ফাইলের নির্দিষ্ট জায়গাকে নির্দেশ করে। একটি উদাহরণ দিলে ব্যাপারটি পরিষ্কার হবে। প্রথমে আপনি নোট প্যাডে লিখুন: abcdefghijklmnopqrstuvwxyz0123456789 এবং C: ড্রাইভে alphabet.txt নামে সেভ করুন। তারপর পাইথনে লিখুন:

f2=open(“C:/alphabet.txt”,”r”)

f2.read(26)

আউটপুট: abcdefghijklmnopqrstuvwxyz

f2.read(10)

আউটপুট:0123456789

দেখুন, প্রথমে পয়েন্টার ফাইলের প্রথমে ছিল। তাই প্রথম ২৬টি অক্ষর দেখাচ্ছে। পয়েন্টার এখন ২৬-এর ঘরে রয়েছে। তাই পরের লাইনে ২৬-এর পরের অক্ষরগুলো দেখাচ্ছে। এভাবে পয়েন্টার পুরো ফাইল পড়ে ফেললে আর কোনো অক্ষর দেখাবে না। আবার প্রথম বা অন্য যেকোনো স্থানে পয়েন্টার নিতে পারেন। alphabet.txt ফাইলের জন্য লক্ষ করুন: f2.seek(0)

seek দিয়ে এভাবে ফাইলের প্রয়োজনমতো স্থানে আপনি যেতে পারবেন। এবার লিখুন:

f2.read(10)

আউটপুট:abcdefghij

f2.read(26)

আউটপুট:klmnopqrstuvwxyz0123456789

টেক্সট ফাইল ব্যতীত অন্য ধরনের ফাইল পড়ার জন্য wb এবং লেখার জন্য wb ব্যবহার করুন।