பைத்தானில் ஒரு கோப்பு திறக்கப்பட்டுள்ளதா அல்லது மூடப்பட்டதா என்பதை எவ்வாறு சரிபார்க்கலாம்

How Check File Is Opened



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

சரிபார்க்க ஒரு கோப்பை உருவாக்கவும்:

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







ஐடி பெயர் மின்னஞ்சல்
01 ஜோனி கல்லீரல் [மின்னஞ்சல் பாதுகாக்கப்பட்டது]
02 மாணிக் ஹொசைன் [மின்னஞ்சல் பாதுகாக்கப்பட்ட]
03 நேஹா ஆக்டர் [மின்னஞ்சல் பாதுகாக்கப்பட்டது]
04 ஜனதுல் ஃபெர்டஸ் [மின்னஞ்சல் பாதுகாக்கப்பட்டது]
05 ஹெலால் உத்தீன் [மின்னஞ்சல் பாதுகாக்கப்பட்டது]



எடுத்துக்காட்டு -1: IOError ஐப் பயன்படுத்தி கோப்பு திறக்கப்பட்டுள்ளதா இல்லையா என்பதைச் சரிபார்க்கவும்

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



# சரிபார்க்க கோப்பு பெயரை எடுக்கவும்
கோப்பு பெயர் = உள்ளீடு('ஏற்கனவே உள்ள கோப்பு பெயரை உள்ளிடவும்: n')
# திறந்த () செயல்பாட்டைப் பயன்படுத்தி முதல் முறையாக கோப்பைத் திறக்கவும்
fileHandler = திறந்த(கோப்பு பெயர்,'ஆர்')
# அதே கோப்பை மீண்டும் திறக்க முயற்சிக்கவும்
முயற்சி:
திறந்த உடன்('கோப்பு பெயர்','ஆர்') எனகோப்பு:
# வெற்றிச் செய்தியை அச்சிடவும்
அச்சு('படிப்பதற்கு கோப்பு திறக்கப்பட்டுள்ளது.')
# கோப்பை முன்பு திறந்தால் பிழையை உயர்த்தவும்
IOError தவிர:
அச்சு('கோப்பு ஏற்கனவே திறக்கப்பட்டுள்ளது.')

வெளியீடு:

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





எடுத்துக்காட்டு -2: மூடப்பட்ட சொத்தைப் பயன்படுத்தி கோப்பு மூடப்பட்டதா இல்லையா என்பதைச் சரிபார்க்கவும்.

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



# கோப்பின் இருப்பை சரிபார்க்க OS தொகுதியை இறக்குமதி செய்யவும்
இறக்குமதி
# Drfine செயல்பாடு கோப்பு மூடப்பட்டதா இல்லையா என்பதை சரிபார்க்கவும்
def check_closed():
என்றால்fileHandler.closed == தவறு:
# வெற்றிச் செய்தியை அச்சிடவும்
அச்சு('படிப்பதற்கு கோப்பு திறக்கப்பட்டுள்ளது.')
வேறு:
# பிழை செய்தியை அச்சிடுங்கள்
அச்சு('கோப்பு மூடப்பட்டது.')

# சரிபார்க்க கோப்பு பெயரை எடுக்கவும்
கோப்பு பெயர் = உள்ளீடு('ஏற்கனவே உள்ள கோப்பு பெயரை உள்ளிடவும்: n')
# கோப்பு இருக்கிறதா இல்லையா என்பதைச் சரிபார்க்கவும்
என்றால்os.path.exists(கோப்பு பெயர்):
# படிப்பதற்கு கோப்பைத் திறக்கவும்
fileHandler = திறந்த(கோப்பு பெயர்,'ஆர்')
# செயல்பாட்டை அழைக்கவும்
சரிபார்க்கப்பட்டது_ மூடப்பட்டது()
வேறு:
# கோப்பு இல்லை என்றால் செய்தியை அச்சிடவும்
அச்சு('கோப்பு இல்லை.')

வெளியீடு:

மேலே உள்ள ஸ்கிரிப்டை இயக்கிய பின் பின்வரும் வெளியீடு தோன்றும். இங்கே, வாடிக்கையாளர்கள். உரை தற்போதைய இடத்தில் உள்ளது, மற்றும் வெற்றி செய்தி, வாசிக்க கோப்பு திறக்கப்பட்டுள்ளது, அச்சிடப்பட்டுள்ளது ஏனெனில் மூடிய சொத்து மதிப்பு திரும்பியது பொய் .

எடுத்துக்காட்டு -3: OSError ஐப் பயன்படுத்தி கோப்பு திறக்கப்பட்டுள்ளதா இல்லையா என்பதைச் சரிபார்க்கவும்

தி OSError ஏற்கனவே திறக்கப்பட்டுள்ள ஒரு கோப்பின் மறுபெயர் () செயல்பாடு ஒன்றுக்கு மேற்பட்ட முறை அழைக்கப்படும் போது உருவாக்குகிறது. பின்வரும் ஸ்கிரிப்டுடன் ஒரு பைதான் கோப்பை உருவாக்கி ஒரு கோப்பு திறக்கப்பட்டுள்ளதா அல்லது மூடப்பட்டதா என்பதை சரிபார்க்கவும் OSError . கோப்பின் இருப்பை சரிபார்த்து கோப்பின் மறுபெயரிட ஸ்கிரிப்ட்டில் OS தொகுதி பயன்படுத்தப்பட்டுள்ளது. எப்பொழுது மறுபெயரிடு () செயல்பாடு இரண்டாவது முறையாக அழைக்கப்படுகிறது, OSError உருவாக்கப்படும், மற்றும் தனிப்பயன் பிழை செய்தி அச்சிடப்படும்.

# கோப்பின் இருப்பை சரிபார்க்க OS தொகுதியை இறக்குமதி செய்யவும்
இறக்குமதி
# ஏற்கனவே உள்ள கோப்பு பெயரை அமைக்கவும்
கோப்பு பெயர் ='clients.txt'
# புதிய கோப்பு பெயரை அமைக்கவும்
புதிய பெயர் ='customers.txt'
# கோப்பு இருக்கிறதா இல்லையா என்பதைச் சரிபார்க்கவும்
என்றால்os.path.exists(கோப்பு பெயர்):
முயற்சி:
# மறுபெயரிடும் செயல்பாட்டை முதல் முறையாக அழைக்கவும்
பெயர்(கோப்பு பெயர், புதிய பெயர்)
# மறுபெயரிடும் செயல்பாட்டை இரண்டாவது முறையாக அழைக்கவும்
பெயர்(கோப்பு பெயர், புதிய பெயர்)
# கோப்பு திறந்திருந்தால் பிழையை உயர்த்தவும்
OSError தவிர:
அச்சு('கோப்பு இன்னும் திறக்கப்பட்டுள்ளது.')

வேறு:
# கோப்பு இல்லை என்றால் செய்தியை அச்சிடவும்
அச்சு('கோப்பு இல்லை.')

வெளியீடு:

மேலே உள்ள ஸ்கிரிப்டை இயக்கிய பின் பின்வரும் வெளியீடு தோன்றும். இங்கே, வாடிக்கையாளர்கள். உரை தற்போதைய இடத்தில் உள்ளது மற்றும் பிழை செய்தி, கோப்பு இன்னும் திறக்கப்பட்டுள்ளது, அச்சிடப்பட்டிருப்பதால் OSError இரண்டாவது போது விதிவிலக்கு உருவாக்கப்பட்டது மறுபெயரிடு () செயல்பாடு செயல்படுத்தப்பட்டது.

முடிவுரை:

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