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

পাইথন ফাইল ডিলিট: ধাপে ধাপে গাইড

আপনি পাইথন ব্যবহার করে আপনার কম্পিউটার থেকে ফাইল ডিলিট করতে পারেন। os.remove() মেথড একক পাইথন ফাইল ডিলিট করে। os.rmdir() একটি ফাইল বা ডিরেক্টরি সরিয়ে দেয়। shutil.rmtree() মেথড একটি ডিরেক্টরি এবং তার ভিতরের ফাইলগুলোক ডিলিট করবে।


ডেভেলপাররা পাইথন প্রোগ্রামে ফাইল ব্যবহার করে বহু উদ্দেশ্যে। ফাইল নিয়ে কাজ করার সময়, সবচেয়ে গুরুত্বপূর্ণ ফাংশনগুলোর একটি যা আপনাকে জানতে হবে সেটি হলো কীভাবে একটি ফাইল ডিলিট করবেন।

উদাহরণস্বরূপ, বলুন আপনি একটি প্রোগ্রাম তৈরি করছেন যা S&P 500 ইনডেক্সের পারফরম্যান্স বিশ্লেষণ করে এবং ফলাফলগুলো একটি ফাইলে সংরক্ষণ করে। আপনি বিদ্যমান বিশ্লেষণ ফাইলগুলো ডিলিট করতে চাইতে পারেন নতুন ফাইলের জন্য জায়গা করতে।

পাইথনে, আপনি os.remove() মেথড ব্যবহার করতে পারেন ফাইল সরাতে, এবং os.rmdir() মেথড ব্যবহার করতে পারেন একটি খালি ফোল্ডার ডিলিট করতে। আপনি যদি একটি ফোল্ডার তার সকল ফাইলসহ ডিলিট করতে চান, তবে আপনি shutil.rmtree() মেথড ব্যবহার করতে পারেন।

এই টিউটোরিয়ালে os.remove(), os.rmdir(), এবং shutil.rmtree() ব্যবহার করে পাইথন ফাইল এবং ফোল্ডার রিমув করার পদ্ধতি আলোচনা করব। আমরা এই মেথডগুলোর প্রতিটিকে ফাইল বা ফোল্ডার ডিলিট করতে ব্যবহৃত একটি উদাহরণও দেখব।

পাইথন ডিলিট ফাইল টিউটোরিয়াল

আপনি পাইথন os.remove(), os.rmdir(), এবং shutil.rmtree() মেথড ব্যবহার করে ফাইল ডিলিট করতে পারেন। এই মেথডগুলো ক্রমশ একটি ফাইল, একটি ডিরেক্টরি, এবং এর ফাইলসহ একটি ফোল্ডার সরিয়ে দেয়।

পাইথনে os.remove() ব্যবহার করে ফাইল কীভাবে ডিলিট করবেন

পাইথন os.remove() মেথড আপনার অপারেটিং সিস্টেম থেকে একটি ফাইল ডিলিট করে। os.remove() শুধু একটি একক ফাইল ডিলিট করে। এটি একটি ডিরেক্টরি ডিলিট করতে পারে না।

os মডিউল ডেভেলপারদের একটি কম্পিউটারের অপারেটিং এবং ফাইল সিস্টেমের সাথে ইন্টারফেস করতে দেয়। os.remove() পাইথন os মডিউলে অন্তর্ভুক্ত একটি মেথড যা আপনাকে একটি אינডিভিজুয়াল ফাইল ডিলিট করতে দেয়।

এই মেথডগুলো ব্যবহার শুরু করার আগে, আমাদের os লাইব্রেরি একটি পাইথন ইম্পোর্ট স্টেটমেন্ট ব্যবহার করে ইম্পোর্ট করতে হবে।

os লাইব্রেরি পাইথনে অপারেটিং সিস্টেমের সাথে ইন্টারঅ্যাকশন সুবিধা প্রদান করে। আমরা নিচের কোড ব্যবহার করে সেটি করতে পারি:

import os

এখন আমরা পাইথনে os.remove() মডিউল ব্যবহার করে ফাইল রিমুভ করার জন্য প্রস্তুত। os.remove() পাথ মেথডের সিনট্যাক্স দেখি:

import os
os.remove(file_location)

os.remove() মেথড এক প্যারামিটার নেয়: যে ফাইলটি আপনি ডিলিট করতে চান তার লোকেশন।

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

আমরা /home/school/math/final_analysis.csv নামে একটি ফাইল তৈরি করতে চাই আমাদের বিশ্লেষিত ডেটার সাথে। কিন্তু, আমাদের প্রোগ্রাম সেটি ফাইল তৈরি করার আগে, আমাদের প্রথমে নিশ্চিত করতে হবে সেটি ইতিমধ্যে এক্সিস্ট করে কিনা।

আমরা এই ফাইলটি রিমুভ করতে নিচের কোড ব্যবহার করতে পারি:

import os
path = "/home/school/math/final_analysis.csv"
os.remove(path)
print("final_analysis.csv has been deleted.")

আমাদের ফাইল রিমুভ হয়েছে। নিচের মেসেজ পাইথন print() স্টেটমেন্ট ব্যবহার করে কনসোলে প্রিন্ট করা হয়েছে:

final_analysis.csv has been deleted.

প্রথম লাইনে, আমরা os মডিউল ইম্পোর্ট করি, যেটি os.remove() মেথড ধারণ করে যেটি আমরা আমাদের প্রোগ্রামে রেফারেন্স করতে চাই। তারপর, আমরা path নামে একটি পাইথন ভেরিয়েবল সংজ্ঞায়িত করি। এই ভেরিয়েবলটি আমরা যে ফাইলটি রিমুভ করতে চাই তার ফাইল পাথ সংরক্ষণ করে।

আমরা তারপর os.remove() ব্যবহার করি এবং আমাদের path ভেরিয়েবলকে ফাইল পাথ হিসেবে নির্দিষ্ট করি, যা আমাদের ফাইলটি রিমুভ করবে।

পাইথন os.rmdir() ব্যবহার করে খালি ডিরেক্টরি ডিলিট করা

os.remove() মেথডটি একটি ফোল্ডার ডিলিট করতে ব্যবহার করা যাবে না। বরং, আমরা os.rmdir() মেথড ব্যবহার করতে পারি। os.rmdir() মেথডটি একটি খালি ফাইল বা ডিরেক্টরি ডিলিট করতে ব্যবহৃত হয়।

os.rmdir() একটি প্যারামিটার গ্রহণ করে: যে ফাইলটি আপনি ডিলিট করতে চান তার পাথ। os.rmdir() মেথডের সিনট্যাক্স নিচে:

import os
os.rmdir(file_path)

মান লেন আমরা আমাদের প্রসেসড ডেটা একটি ফোল্ডারে সংরক্ষণ করতে সিদ্ধান্ত নিয়েছি যেটির নাম final আমাদের /home/school/math ডিরেক্টরির ভিতরে। আমরা هرবার প্রোগ্রাম রান করলে final ফোল্ডার ডিরেক্টরি রিমুভ করতে চাই। কারণ আমাদের প্রোগ্রাম প্রসেসড ডেটার সাথে একটি নতুন ফোল্ডার তৈরি করবে।

আমরা final ফোল্ডার রিমুভ করতে নিচের কোড ব্যবহার করতে পারি:

import os
path = "/home/school/math/final"
os.rmdir(path)
print("/home/school/math/final has been deleted.")

আমাদের কোড /home/school/math/final ডিরেক্টরি ডিলিট করে এবং কনসোলে নিচের মেসেজ ফেরত দেয়:

/home/school/math/final has been deleted.

os.rmdir() মেথড শুধু একটি খালি ডিরেক্টরি ডিলিট করতে ব্যবহার করা যায়। আপনি যদি এমন একটি ফোল্ডার নির্দিষ্ট করেন যেটিতে ফাইল রয়েছে, তবে নিচের এরর ফেরত দেওয়া হবে:

[Errno 13] Permission denied: '/home/school/math/final'
Directory 'final' can not be removed

পাইথন os এরর হ্যান্ডলিং

উপরের উদাহরণগুলিতে, আমরা বলেছি যে, কিছু কেসে, একটি আর্গুমেন্ট দ্বারা পারমিশন এরর ফেরত দেওয়া যেতে পারে। আমরা os.remove() ব্যবহার করে একটি ডিরেক্টরি রিমুভ করলে একটি এরর ফেরত দেওয়া হবে। আমরা os.rmdir() ব্যবহার করে একটি ফাইল-সহ ডিরেক্টরি রিমুভ করলে একটি এরর ফেরত দেওয়া হবে।

যখন আপনি একটি প্রোগ্রামে ফাইল ডিলিট করছেন, তবে আপনি এমন একটি ফাংশন চাইতে পারেন যা আপনার এররগুলো সুন্দরভাবে হ্যান্ডেল করবে যদি কোনো এরর উদ্ভব হয়। আমরা এটা try except ব্লক ব্যবহার করে করতে পারি।

এখানে উপরের os.rmdir() মেথড উদাহরণটি, কিন্তু একটি এরর-হ্যান্ডলিং মেকানিজমসহ যা একটি প্রিডিফাইনড মেসেজ প্রিন্ট করবে যদি এক্সেপশন উদ্ভব হয়:

import os
path = "/home/school/math/final"
try:
    os.rmdir(path)
    print("/home/school/math/final has been deleted.")
except OSError as error:
    print("There was an error.")

এখন, যদি আমরা আমাদের কোড রান করি এবং কোনো এরর ফেরত না আসে, তবে আমাদের ডিরেক্টরি রিমুভ হয়ে যাবে এবং নিচের মেসেজ ফেরত দেওয়া হবে:

/home/school/math/final has been deleted.

তবে, যদি আমরা আমাদের কোড রান করি এবং একটি ফাইল-সহ ডিরেক্টরি রিমুভ করার চেষ্টা করি, উদাহরণস্বরূপ, তবে নিচের মেসেজ ফেরত দেওয়া হবে:

There was an error.

আমাদের কোডে, আমরা একটি try except ব্লক ব্যবহার করেছি। এই প্রসিডিউর প্রথমে try ব্লকের ভিতরের কোড লাইনগুলো রান করে। যদি কোনো এরর সম্মুখীন হয়, তবে এটি except ব্লকের কোড রান করবে। এই কেসে, except ব্লক শুধু এক্সিকিউট হবে যদি একটি OSError উদ্ভব হয়।

আপনি যদি try except ব্লক ব্যবহার করে এরর হ্যান্ডলিং সম্পর্কে আরও জানতে চান, তবে আমাদের Python try except টিউটোরিয়াল পড়ুন।

ডিরেক্টরিসহ ফাইল ডিলিট পাইথন

shutil লাইব্রেরি একটি মেথড ধারণ করে যেটি shutil.rmtree() নামে যেটি একটি ফাইল-সহ ডিরেক্টরি রিমুভ করতে ব্যবহার করা যায়।

shutil লাইব্রেরি ফাইল অপারেশন সম্পর্কিত অনেক ফাংশন অফার করে। আমাদের কেসে, আমরা shutil.rmtree() মেথডে ফোকাস করব, যা পুরো ডিরেক্টরি ট্রি রিমুভ করে।

shutil.rmtree() মেথডের সিনট্যাক্স নিচে:

import shutil
shutil.rmtree(file_path)

লক্ষ্য করুন যে আমরা আমাদের কোডে shutil মডিউল ইম্পোর্ট করেছি। এর কারণ shutil.rmtree() একটি এক্সটার্নাল লাইব্রেরির অংশ, os.remove()-এর মতো, তাই আমাদের লাইব্রেরি ইম্পোর্ট করতে হবে এরা ব্যবহার করার আগে।

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

import shutil
path = "/home/school/math/final"
shutil.rmtree(path)
print("/home/school/math/final has been removed.")

আমাদের কোড final ফোল্ডার এবং এর সকল কন্টেন্ট রিমুভ করে, তারপর কনসোলে নিচের মেসেজ প্রিন্ট করে:

/home/school/math/final has been removed.

উপসংহার

ফাইল রিমুভ করা পাইথনে একটি সাধারণ অপারেশন। os.remove() মেথড ব্যবহার করা যায় একটি নির্দিষ্ট ফাইল ডিলিট করতে, এবং os.rmdir() মেথড ব্যবহার করা যায় একটি খালি ডিরেক্টরি রিমুভ করতে। অপরিচিত, আপনি shutil.rmtree() মেথড ব্যবহার করতে পারেন এক বা অধিক ফাইল ধারণকারী একটি ফোল্ডার ডিলিট করতে।

পাইথনে কোডিং সম্পর্কে আরও জানতে, আমাদের How to Learn Python-এ সম্পূর্ণ গাইড পড়ুন।

  1. পাইথন ইন্টারপ্রেটার: ধাপে ধাপে গাইড

  2. পাইথনে ফাইল রিনেম: একটি ধাপে ধাপে গাইড

  3. পাইথনে ফাইল সরানো: shutil.move() সম্পূর্ণ গাইড

  4. পাইথনে ফাইল ডিলিট করার পদ্ধতি