பைத்தானில் உள்ள கோப்புகள் மற்றும் கோப்பகங்களை அகற்றுவதற்கான முறைகள்

பைத்தானில் உள்ள கோப்புகள் மற்றும் கோப்பகங்களை அகற்றுவதற்கான முறைகள்
பைத்தானில் உள்ள கோப்புகள் மற்றும் கோப்பகங்களை அகற்றுவதற்கான முறைகள்

பைத்தானில் கோப்பு மற்றும் கோப்புறை நீக்குதலைப் புரிந்துகொள்வது

பைதான் கோப்புகள் மற்றும் கோப்பகங்களை நீக்க பல்வேறு முறைகளை வழங்குகிறது. தரவைச் செயலாக்கிய பிறகு சுத்தம் செய்தாலும் அல்லது உங்கள் திட்டத்தை ஒழுங்கமைத்தாலும், தேவையற்ற கோப்புகள் மற்றும் கோப்புறைகளை எவ்வாறு அகற்றுவது என்பதை அறிவது மிகவும் பயனுள்ளதாக இருக்கும்.

இந்த கட்டுரையில், பைத்தானின் உள்ளமைக்கப்பட்ட தொகுதிகளைப் பயன்படுத்தி கோப்புகள் மற்றும் கோப்புறைகளை நீக்குவதற்கான பல்வேறு வழிகளை ஆராய்வோம். உங்கள் கோப்பு முறைமையை நீங்கள் திறமையாகவும் பாதுகாப்பாகவும் நிர்வகிக்க முடியும் என்பதை உறுதிப்படுத்த, நடைமுறை எடுத்துக்காட்டுகள் மற்றும் சிறந்த நடைமுறைகளை நாங்கள் உள்ளடக்குவோம்.

கட்டளை விளக்கம்
os.remove(path) பாதையால் குறிப்பிடப்பட்ட கோப்பை நீக்குகிறது. கோப்பு இல்லை என்றால் பிழையை எழுப்புகிறது.
os.rmdir(path) பாதையால் குறிப்பிடப்பட்ட கோப்பகத்தை நீக்குகிறது. அடைவு காலியாக இருக்க வேண்டும்.
shutil.rmtree(path) ஒரு கோப்பகத்தையும் அதன் அனைத்து உள்ளடக்கங்களையும் நீக்குகிறது. காலியாக இல்லாத கோப்பகங்களுக்கு பயனுள்ளதாக இருக்கும்.
FileNotFoundError இல்லாத கோப்பு அல்லது கோப்பகத்தை நீக்க முயற்சிக்கும்போது ஒரு விதிவிலக்கு எழுப்பப்பட்டது.
PermissionError செயல்பாட்டில் கோப்பு அல்லது கோப்பகத்தை நீக்க தேவையான அனுமதிகள் இல்லாதபோது ஒரு விதிவிலக்கு எழுப்பப்படுகிறது.
OSError நீக்கப்பட வேண்டிய கோப்பகம் காலியாக இல்லாதபோது அல்லது வேறு காரணங்களுக்காக நீக்க முடியாதபோது ஒரு விதிவிலக்கு எழுப்பப்படுகிறது.

பைதான் கோப்பு மற்றும் அடைவு நீக்குதலைப் புரிந்துகொள்வது

கொடுக்கப்பட்டுள்ள ஸ்கிரிப்டுகள் பைத்தானில் உள்ள கோப்புகள் மற்றும் கோப்பகங்களை எவ்வாறு நீக்குவது என்பதை விளக்குகிறது os மற்றும் shutil தொகுதிகள். முதல் ஸ்கிரிப்ட் பயன்படுத்துகிறது os.remove(path) அதன் பாதையால் குறிப்பிடப்பட்ட கோப்பை நீக்க கட்டளை. நீங்கள் ஒரு கோப்பை நீக்க வேண்டியிருக்கும் போது இந்த கட்டளை அவசியம். கோப்பு இல்லை என்றால், a FileNotFoundError உயர்த்தப்பட்டது, இது விதிவிலக்கு தொகுதி மூலம் கையாளப்படுகிறது. கூடுதலாக, அனுமதி சிக்கல்கள் இருந்தால், ஏ PermissionError உயர்த்தப்பட்டது, நிரல் செயலிழக்காமல் இருப்பதை உறுதிசெய்கிறது, மாறாக பயனருக்கு அர்த்தமுள்ள பிழைச் செய்தியை வழங்குகிறது.

இரண்டாவது ஸ்கிரிப்ட் பயன்படுத்துகிறது os.rmdir(path) காலியான கோப்பகத்தை அகற்றுவதற்கான கட்டளை. இனி தேவைப்படாத வெற்று கோப்புறைகளை சுத்தம் செய்ய இந்த கட்டளை பயனுள்ளதாக இருக்கும். கோப்பு நீக்கல் ஸ்கிரிப்டைப் போலவே, இது கையாளுகிறது FileNotFoundError மற்றும் PermissionError, ஆனால் அது பிடிக்கிறது OSError அடைவு காலியாக இல்லாத சந்தர்ப்பங்களில். மூன்றாவது ஸ்கிரிப்ட் பயன்படுத்துகிறது shutil.rmtree(path) ஒரு கோப்பகத்தையும் அதன் அனைத்து உள்ளடக்கங்களையும் நீக்குவதற்கான கட்டளை, காலியாக இல்லாத கோப்பகங்களை அகற்றுவதற்கு ஏற்றதாக அமைகிறது. இந்த முறை குறிப்பிட்ட கோப்பகத்தில் உள்ள அனைத்து கோப்புகள் மற்றும் துணை அடைவுகள் மீண்டும் மீண்டும் நீக்கப்படுவதை உறுதிசெய்கிறது, இது ஒரு விரிவான தூய்மைப்படுத்தும் தீர்வை வழங்குகிறது.

OS தொகுதியைப் பயன்படுத்தி பைத்தானில் உள்ள கோப்புகளை நீக்குதல்

OS தொகுதியுடன் பைதான் நிரலாக்கம்

import os

# Specify the file to be deleted
file_path = 'path/to/your/file.txt'

try:
    os.remove(file_path)
    print(f"{file_path} has been deleted successfully")
except FileNotFoundError:
    print(f"{file_path} does not exist")
except PermissionError:
    print(f"Permission denied to delete {file_path}")
except Exception as e:
    print(f"Error occurred: {e}")

OS தொகுதியுடன் பைத்தானில் உள்ள கோப்பகங்களை நீக்குகிறது

டைரக்டரி நிர்வாகத்திற்கான பைதான் புரோகிராமிங்

import os

# Specify the directory to be deleted
dir_path = 'path/to/your/directory'

try:
    os.rmdir(dir_path)
    print(f"{dir_path} has been deleted successfully")
except FileNotFoundError:
    print(f"{dir_path} does not exist")
except OSError:
    print(f"{dir_path} is not empty or cannot be deleted")
except Exception as e:
    print(f"Error occurred: {e}")

கோப்பகங்களை அகற்ற ஷட்டில் தொகுதியைப் பயன்படுத்துதல்

ஷட்டில் மாட்யூலுடன் பைதான் புரோகிராமிங்

import shutil

# Specify the directory to be deleted
dir_path = 'path/to/your/directory'

try:
    shutil.rmtree(dir_path)
    print(f"{dir_path} and all its contents have been deleted")
except FileNotFoundError:
    print(f"{dir_path} does not exist")
except PermissionError:
    print(f"Permission denied to delete {dir_path}")
except Exception as e:
    print(f"Error occurred: {e}")

பைத்தானில் கோப்பு மற்றும் கோப்புறையை நீக்குவதற்கான மேம்பட்ட நுட்பங்கள்

கோப்புகள் மற்றும் கோப்பகங்களை நீக்குவதற்கான அடிப்படை முறைகளுக்கு அப்பால், பைதான் கோப்பு முறைமைகளை நிர்வகிப்பதற்கான மேம்பட்ட நுட்பங்களை வழங்குகிறது. அத்தகைய ஒரு முறை பயன்படுத்தப்படுகிறது pathlib தொகுதி, இது கோப்பு மற்றும் அடைவு செயல்பாடுகளுக்கு பொருள் சார்ந்த அணுகுமுறையை வழங்குகிறது. தி Path வகுப்பு pathlib தொகுதி போன்ற முறைகளை உள்ளடக்கியது unlink() கோப்புகளை நீக்குவதற்கு மற்றும் rmdir() அடைவுகளை அகற்றுவதற்கு. இந்த முறைகளுடன் ஒப்பிடும்போது மிகவும் படிக்கக்கூடிய மற்றும் உள்ளுணர்வு தொடரியல் வழங்குகிறது os மற்றும் shutil தொகுதிகள். கூடுதலாக, தி pathlib தொகுதியின் முறைகள் போன்ற பிற பைதான் அம்சங்களுடன் இணைக்கப்படலாம் glob மிகவும் சிக்கலான கோப்பு செயல்பாடுகளைச் செய்ய.

மற்றொரு மேம்பட்ட நுட்பம் பைத்தானைப் பயன்படுத்துவதை உள்ளடக்கியது tempfile தற்காலிக கோப்புகள் மற்றும் கோப்பகங்களை உருவாக்க மற்றும் நிர்வகிக்க தொகுதி. பிழை ஏற்பட்டாலும், தற்காலிக கோப்புகள் தானாகவே சுத்தம் செய்யப்படுவதை உறுதிசெய்ய வேண்டிய சூழ்நிலைகளில் இது மிகவும் பயனுள்ளதாக இருக்கும். தி tempfile.TemporaryDirectory() சூழல் மேலாளர் ஒரு தற்காலிக கோப்பகத்தை உருவாக்குகிறார், அது சூழல் வெளியேறும் போது தானாகவே நீக்கப்படும். இதேபோல், tempfile.NamedTemporaryFile() மூடப்பட்ட போது நீக்கப்படும் ஒரு தற்காலிக கோப்பை வழங்குகிறது. இந்த முறைகள் உங்கள் கோப்பு கையாளுதல் குறியீட்டின் வலிமையையும் நம்பகத்தன்மையையும் மேம்படுத்துகின்றன, குறிப்பாக சுத்தம் செய்வது முக்கியமான பயன்பாடுகளில்.

பைத்தானில் கோப்புகள் மற்றும் கோப்புறைகளை நீக்குவது பற்றிய பொதுவான கேள்விகள் மற்றும் பதில்கள்

  1. பைத்தானில் ஒரே நேரத்தில் பல கோப்புகளை நீக்குவது எப்படி?
  2. உடன் ஒரு வளையத்தைப் பயன்படுத்தலாம் os.remove(path) பல கோப்புகளை நீக்க கட்டளை. உதாரணத்திற்கு: for file in file_list: os.remove(file).
  3. ஒரு கோப்பகத்தையும் அதன் உள்ளடக்கங்களையும் பயன்படுத்தாமல் நீக்க முடியுமா? shutil.rmtree()?
  4. ஆம், நீங்கள் பயன்படுத்தலாம் os மற்றும் glob தொகுதிகள் ஒன்றாக: for file in glob.glob(directory + '/*'): os.remove(file) பின்னர் os.rmdir(directory).
  5. கோப்புகளை நிரந்தரமாக நீக்குவதற்குப் பதிலாக குப்பைக்கு நகர்த்த வழி உள்ளதா?
  6. ஆம், நீங்கள் பயன்படுத்தலாம் send2trash தொகுதி: send2trash.send2trash(file_path).
  7. என்ன வித்தியாசம் os.remove() மற்றும் os.unlink()?
  8. இரண்டு கட்டளைகளும் கோப்புகளை நீக்குகின்றன; os.unlink() என்பதற்கான மாற்றுப்பெயர் os.remove().
  9. கோப்புகளை நீக்க வைல்டு கார்டுகளைப் பயன்படுத்தலாமா?
  10. ஆம், பயன்படுத்தவும் glob தொகுதி: for file in glob.glob('*.txt'): os.remove(file).
  11. கோப்பு உள்ளதா என்பதை நீக்குவதற்கு முன் அதை எவ்வாறு சரிபார்க்கலாம்?
  12. பயன்படுத்த os.path.exists(path) கோப்பு இருக்கிறதா என்று சரிபார்க்க கட்டளை.
  13. தற்போது திறந்திருக்கும் கோப்பை நீக்க முயற்சித்தால் என்ன நடக்கும்?
  14. நீங்கள் ஒரு பெறுவீர்கள் PermissionError, கோப்பு பயன்பாட்டில் இருப்பதால் நீக்க முடியாது.
  15. கோப்பு அல்லது கோப்பகத்தை கட்டாயப்படுத்தி நீக்க வழி உள்ளதா?
  16. இல்லை, நீங்கள் அனுமதிகளைக் கையாள வேண்டும் மற்றும் நீக்குவதற்கு முன் கோப்பு அல்லது கோப்பகம் பயன்பாட்டில் இல்லை என்பதை உறுதிப்படுத்தவும்.

பைத்தானில் கோப்பு மற்றும் கோப்புறையை நீக்குவதற்கான மேம்பட்ட நுட்பங்கள்

கோப்புகள் மற்றும் கோப்பகங்களை நீக்குவதற்கான அடிப்படை முறைகளுக்கு அப்பால், பைதான் கோப்பு முறைமைகளை நிர்வகிப்பதற்கான மேம்பட்ட நுட்பங்களை வழங்குகிறது. அத்தகைய ஒரு முறை பயன்படுத்தப்படுகிறது pathlib தொகுதி, இது கோப்பு மற்றும் அடைவு செயல்பாடுகளுக்கு பொருள் சார்ந்த அணுகுமுறையை வழங்குகிறது. தி Path வகுப்பு pathlib தொகுதி போன்ற முறைகளை உள்ளடக்கியது unlink() கோப்புகளை நீக்குவதற்கு மற்றும் rmdir() அடைவுகளை அகற்றுவதற்காக. இந்த முறைகளுடன் ஒப்பிடும்போது மிகவும் படிக்கக்கூடிய மற்றும் உள்ளுணர்வு தொடரியல் வழங்குகிறது os மற்றும் shutil தொகுதிகள். கூடுதலாக, தி pathlib தொகுதியின் முறைகள் போன்ற பிற பைதான் அம்சங்களுடன் இணைக்கப்படலாம் glob மிகவும் சிக்கலான கோப்பு செயல்பாடுகளைச் செய்ய.

மற்றொரு மேம்பட்ட நுட்பம் பைத்தானைப் பயன்படுத்துவதை உள்ளடக்கியது tempfile தற்காலிக கோப்புகள் மற்றும் கோப்பகங்களை உருவாக்க மற்றும் நிர்வகிக்க தொகுதி. பிழை ஏற்பட்டாலும், தற்காலிக கோப்புகள் தானாகவே சுத்தம் செய்யப்படுவதை உறுதிசெய்ய வேண்டிய சூழ்நிலைகளில் இது மிகவும் பயனுள்ளதாக இருக்கும். தி tempfile.TemporaryDirectory() சூழல் மேலாளர் ஒரு தற்காலிக கோப்பகத்தை உருவாக்குகிறார், அது சூழல் வெளியேறும் போது தானாகவே நீக்கப்படும். இதேபோல், tempfile.NamedTemporaryFile() மூடப்பட்ட போது நீக்கப்படும் ஒரு தற்காலிக கோப்பை வழங்குகிறது. இந்த முறைகள் உங்கள் கோப்பு கையாளுதல் குறியீட்டின் வலிமையையும் நம்பகத்தன்மையையும் மேம்படுத்துகின்றன, குறிப்பாக சுத்தம் செய்வது முக்கியமான பயன்பாடுகளில்.

பைத்தானில் உள்ள கோப்புகள் மற்றும் கோப்புறைகளை நீக்குவது பற்றிய இறுதி எண்ணங்கள்

பைதான் கோப்புகள் மற்றும் கோப்புறைகளை நீக்க பல வழிகளை வழங்குகிறது, இது கோப்பு முறைமை நிர்வாகத்திற்கான பல்துறை கருவியாக அமைகிறது. போன்ற தொகுதிகளைப் பயன்படுத்துவதன் மூலம் os, shutil, மற்றும் pathlib, டெவலப்பர்கள் தங்கள் தேவைகளுக்கு மிகவும் பொருத்தமான முறையை தேர்வு செய்யலாம். பயன்பாடு உட்பட மேம்பட்ட நுட்பங்கள் tempfile தொகுதி, தற்காலிக கோப்புகள் மற்றும் கோப்பகங்களை திறமையான மற்றும் பாதுகாப்பான சுத்தம் செய்வதை மேலும் உறுதி செய்கிறது. இந்த முறைகளைப் புரிந்துகொள்வது எந்த பைதான் பயன்பாட்டிலும் கோப்பு நீக்கங்களை திறம்பட கையாளும் அறிவை உங்களுக்கு வழங்குகிறது.