কম্পিউটার টিউটোরিয়াল

পাইথনে ডিরেক্টরি তৈরি: একটি ধাপে ধাপে গাইড

পাইথনের os.mkdir() মেথড আপনার ফাইল সিস্টেমে একটি খালি ডিরেক্টরি তৈরি করে। আপনি একটি অস্তিত্বহীন ফোল্ডারের ভিতরে ফোল্ডার তৈরি করতে এই মেথডটি ব্যবহার করতে পারবেন না। os.makedirs() মেথড পুনরাবৃত্তিমূলকভাবে (recursively) একটি খালি ডিরেক্টরি তৈরি করে।

পাইথন OS মডিউল: একটি সংক্ষিপ্ত পরিচিতি

পাইথনে ফাইল নিয়ে কাজ করার আগে আপনাকে os মডিউল ইম্পোর্ট করতে হবে। os মডিউল পাইথনের বিল্ট-ইন। এতে আপনার কম্পিউটারের অন্ডারলাইং অপারেটিং সিস্টেমের সাথে ইন্টারফেস করার জন্য অনেক মেথড থাকে।

এখানে আমরা os মডিউলের ফাইল সিস্টেম মেথডগুলোতে আগ্রহী, যেগুলো ফাইল নিয়ে কাজ করতে ব্যবহার করা হয়। আমরা পাইথনের import স্টেটমেন্ট ব্যবহার করে os ইম্পোর্ট করতে পারি:

import os

পাইথনে ডিরেক্টরি তৈরি (os.mkdir)

os.mkdir() মেথড একটি একক ডিরেক্টরি তৈরি করতে ব্যবহৃত হয়। উদাহরণস্বরূপ, যদি আমরা এমন একটি প্রোগ্রাম তৈরি করি যেটির আউটপুট সংরক্ষণের জন্য একটি নতুন ফোল্ডার দরকার, তবে আমরা os.mkdir() ব্যবহার করব।

os.mkdir() মেথডের সিনট্যাক্স নিচের মতো:

os.mkdir(path, access)

os.mkdir() ফাংশনটি দুটি প্যারামিটার গ্রহণ করে:

  • path — আপনি যেখানে ডিরেক্টরি তৈরি করতে চান সেটির ফাইল পাথ (বাধ্যতামূলক)
  • access — আপনি ডিরেক্টরিতে কী অ্যাক্সেস অধিকার দিতে চান (ঐচ্ছিক)

উদাহরণ: os.mkdir() ব্যবহার

চলুন একটি উদাহরণের মাধ্যমে দেখি os.mkdir() কীভাবে কাজ করে।

ধরা যাক আমরা গাণিতিক শিক্ষার্থীদের টেস্ট স্কোর বিশ্লেষণ করার একটি প্রোগ্রাম তৈরি করছি। এই প্রোগ্রামটি প্রতিটি শিক্ষার্থী লেটেস্ট টেস্টে পাস করেছে কিনা তা সংরক্ষণ করবে। শুরুতে, আমরা আমাদের ডেটা সংরক্ষণের জন্য একটি ডিরেক্টরি তৈরি করব। এটি নিশ্চিত করবে যে আমাদের ডেটা প্রোগ্রামের বাকি অংশ থেকে আলাদা থাকে।

ডেটার জন্য ডিরেক্টরি তৈরি করার কোড:

import os
path = "/home/school/math/grades/final"
os.mkdir(path)
print("/home/school/math/grades/final has been created.")

আমাদের কোড /home/school/math/grades ফোল্ডারের ভিতরে final নামে একটি নতুন ডিরেক্টরি তৈরি করে। এরপর এটি নিচের মেসেজটি প্রদর্শন করে:

/home/school/math/grades/final has been created.

mkdir() মেথড শুধুমাত্র একবারে একটি ডিরেক্টরি তৈরি করতে পারে। আমরা final নামে একটি ফোল্ডার তৈরি করে তার ভিতরে আবার jan2020 নামে ফোল্ডার তৈরি করতে পারব না।

উদাহরণ: কাস্টম পারমিশন সহ os.mkdir()

ঐচ্ছিক access প্যারামিটার ব্যবহার করে আমরা ডিরেক্টরির পারমিশন নির্দিষ্ট করতে পারি। ডিফল্টভাবে mkdir() তৈরি করা ডিরেক্টরির অ্যাক্সেস পারমিশন থাকে ৭৭৭। এর মানে ডিরেক্টরিটি মালিক এবং অন্যান্য সব ইউজার দ্বারা পঠনযোগ্য এবং লেখনযোগ্য।

কিন্তু যদি আমরা নিজেদের পারমিশন সেট করতে চাই? ধরুন আমাদের অপারেটিং সিস্টেম একাধিক শিক্ষক দ্বারা অ্যাক্সেসযোগ্য, এবং আমরা শুধু মালিককে লেখার অধিকার দিতে চাই। তখন আমাদের ৭৫৫ পারমিশন ব্যবহার করতে হবে। এই পারমিশন বলে ফাইলটি সব ইউজার দ্বারা পঠনযোগ্য এবং অ্যাক্সেসযোগ্য, কিন্তু লেখা শুধু মালিক করবে।

কাস্টম পারমিশন সহ ওয়ার্কিং ডিরেক্টরি তৈরি করার কোড:

import os
path = "/home/school/math/grades/final"
access = 0o755
os.mkdir(path, access)
print("/home/school/math/grades/final has been created.")

আমরা /home/school/math/grades/final নামে একটি টার্গেট ডিরেক্টরি তৈরি করেছি যার অ্যাক্সেস পারমিশন ৭৫৫। এর মানে ফাইলটি সব ইউজার পড়তে পারবে, কিন্তু লিখতে শুধু মালিক পারবে। প্রোগ্রামটি তারপর মেসেজটি প্রিন্ট করে।

মনে রাখবেন আমাদের access ভেরিয়েবলটি 0o755 সেট করা হয়েছে। আমরা এটা इसलिए করেছি কারণ অ্যাক্সেস রাইটস অক্টেল প্রিফিক্স ব্যবহার করে, তাই 0o প্রিফিক্স দিতে হয়।

পাইথনে একাধিক ডিরেক্টরি তৈরি (os.makedirs)

পাইথনের os.makedirs() মেথড রিকার্সিভলি ফোল্ডার তৈরি করে। আপনি এই মেথড ব্যবহার করে একটি অস্তিত্বহীন ফোল্ডারের ভিতরে ফোল্ডার তৈরি করতে পারেন। os.makedirs() একটি আর্গুমেন্ট গ্রহণ করে: আপনি যে ফোল্ডারটি তৈরি করতে চান তার পাথ।

os.makedirs() এর সিনট্যাক্স:

os.makedirs(path, access)

এই মেথডটি os.mkdir() এর মতো একই আর্গুমেন্টগুলো গ্রহণ করে।

উদাহরণ: os.makedirs() ব্যবহার

প্রায়শই এমন পরিস্থিতি হয় যেখানে আমাদের নতুন ডিরেক্টরির ভিতরে আবার নতুন ডিরেক্টরি তৈরি করতে হয়।

উদাহরণস্বরূপ, আমরা গাণিতিক শিক্ষার্থীদের টেস্ট স্কোর ডেটা সংরক্ষণ করার প্রোগ্রাম बनाয়। সব ডেটা একই ফোল্ডারে রাখার বদলে আমরা বছর এবং মাস অনুযায়ী আলাদা ফোল্ডারে ডেটা রাখতে পারি। এটি ফাইলগুলো খুঁজে পেতে সহজ করবে।

স্কুলের গাণিতিক টেস্ট উদাহরণ ব্যবহার করে os.makedirs() কীভাবে কাজ করে তা দেখি।

প্রোগ্রামের স্পেসিফিকেশন পরিবর্তন হয়েছে। এখন আমরা টেস্টের বছর এবং মাস অনুযায়ী ফোল্ডারে ডেটা রাখব। এটা নিচের কোড দিয়ে করা যাবে:

import os
path = "/home/school/math/grades/2020/02"
access = 0o755
os.makedirs(path, access)
print("/home/school/math/grades/2020/02 has been created.")

ধরুন আমাদের এখনো 2020 ফোল্ডার বা 02 ফোল্ডার নেই। এই কোডটি প্রথমে 2020 ফোল্ডারটি তৈরি করবে, তারপর সেটির ভিতরে 02 ফোল্ডারটি তৈরি করবে। আমরা এই ফোল্ডারটিকে ৭৫৫ অ্যাক্সেস পারমিশন দিয়েছি।

ফোল্ডার তৈরি হওয়ার পরে প্রোগ্রামটি মেসেজটি প্রিন্ট করে:

/home/school/math/grades/2020/02 has been created.

উপসংহার

ফাইল নিয়ে কাজ করার সময় পাইথনে ডিরেক্টরি তৈরি করা একটি সাধারণ অপারেশন। os.mkdir() মেথড একটি একক ডিরেক্টরি তৈরি করতে ব্যবহার করা হয়, আর os.makedirs() মেথড মাল্টি-লেভেল ডিরেক্টরি তৈরি করতে ব্যবহার করা হয়।

এই টিউটোরিয়ালে আমরা os.mkdir() এবং os.makedirs() ব্যবহার করে পাইথনে ফোল্ডার তৈরি করার পদ্ধতি আলোচনা করেছি। আমরা প্রতিটি মেথডের উদাহরণও দেখিয়েছি।

পাইথন সম্পর্কে আরও জানতে আগ্রহী? আমাদের সম্পূর্ণ How to Learn Python গাইডটি দেখুন যেখানে এক্সপার্ট টিপস এবং এই প্রোগ্রামিং ল্যাঙ্গুয়েজ শিখতে সাহায্য করার পরামর্শ রয়েছে।

  1. পাইথন Join: একটি গাইড

  2. পাইথন Requests: একটি গাইড

  3. পাইথন সুইচ স্টেটমেন্ট: একটি হাউ-টু গাইড

  4. পাইথন Hello World: হাউ-টু গাইড