பைதான் இட்டரேட்டர்கள்: பைத்தானில் ஐடரேட்டர் என்றால் என்ன, அதை எவ்வாறு பயன்படுத்துவது?



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

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

இட்ரேட்டர்கள் Vs Iterable

பைத்தானில் உள்ள ஒரு பொருள், அதை ஒரு இட்ரபிள் பொருளாகப் பயன்படுத்தலாம். இதன் பொருள் பொருளின் வரிசையை மீண்டும் செய்ய முடியும் என்பதாகும். பைத்தான் தொகுப்புகளில் பெரும்பாலானவை a பட்டியல் , , tuple , செட் , மற்றும் கூட சரகம் ஒரு ஈட்டரபிள் என்று கருதலாம்.





பைதான் இட்ரேட்டர்கள் என்றால் என்ன?

ஒரு பைதான் I. terator எண்ணற்ற மதிப்புகளைக் கொண்ட ஒரு கொள்கலன். ஒரு கொள்கலனில் உள்ள மதிப்புகளை ஈட்டரேட்டர்களைப் பயன்படுத்தி பயணிக்க முடியும் - குறிப்பாக பட்டியல்கள்.

பயணத்தைத் தவிர, ஒரு கொள்கலனில் உள்ள தரவு கூறுகளுக்கான அணுகலை ஈட்டரேட்டர்கள் தருகிறார்கள், ஆனால் அது செயல்படாதுமறு செய்கைஅதாவது, அந்தக் கருத்துடன் அல்லது சொற்களின் அற்பமான பயன்பாட்டுடன் எடுக்கப்பட்ட சில குறிப்பிடத்தக்க சுதந்திரம் இல்லாமல் அல்ல. ஒரு ஈரேட்டர் கிட்டத்தட்ட ஒரு ஒத்திருக்கிறதுதரவுத்தள கர்சர்நடத்தை. இல் உள்ள ஈட்டரேட்டரின் எளிய எடுத்துக்காட்டு இங்கே .



my_obj = {'எடுரேகா', 'பைதான்', 'ஐரேட்டர்'} iter_obj = iter (my_obj) அச்சு (அடுத்த (iter_obj))

வெளியீடு: எடுரேகா

‘ஃபார் இன் லூப்’ உடன் பயன்படுத்தக்கூடிய பைதான் எந்த வகையிலும் ஈட்டரேட்டர்.ஒரு பொருளாக பயன்படுத்தப்பட வேண்டிய எந்தவொரு பொருளும் பின்வரும் முறைகளை செயல்படுத்த வேண்டும்.

மலைப்பாம்பில் உள்ள ஈரேட்டர்கள் - எடுரேகா



1. __iter __ ()

இது ஒரு ஈட்டரேட்டரின் துவக்கத்தில் அழைக்கப்படுகிறது.இது அடுத்த அல்லது __ அடுத்த__ முறையைக் கொண்ட ஒரு பொருளைத் தர வேண்டும்.

2. __ அடுத்த __ ()

ஐடரேட்டரின் அடுத்த முறை ஈட்டரபிள் அடுத்த மதிப்பை வழங்குகிறது.

‘ஃபார் இன்’ லூப் மூலம் ஒரு ஈட்டரேட்டரைப் பயன்படுத்தும்போது, ​​அடுத்த () மறைமுகமாக அழைக்கப்படுகிறது ஈட்டரேட்டர் பொருளில். இந்த முறை மறு செய்கையின் முடிவைக் குறிக்க ஒரு StopIteration ஐப் பயன்படுத்த வேண்டும்.இந்த இரண்டு முறைகளையும் ஒன்றாக சேர்த்து ஈட்டரேட்டர் புரோட்டோகால் என்று அழைக்கப்படுகிறது. ஒரு எடுத்துக்காட்டுடன் பைத்தானில் ஒரு ஃபார் லூப் ஒரு ஈரேட்டராக எவ்வாறு செயல்படுகிறது என்பதைப் புரிந்துகொள்வோம்.

நான் பொருளில்: அச்சு (i)

லூப் ஒரு ஈரேட்டராக எவ்வாறு செயல்படுகிறது என்பதைப் புரிந்துகொள்வோம்.

# அந்த செயலற்ற iter_obj = iter (iterable) # எல்லையற்ற சுழற்சியில் இருந்து ஒரு மறு செய்கை பொருளை உருவாக்குக உண்மை: முயற்சிக்கவும்: # அடுத்த உருப்படி உறுப்பைப் பெறுக = அடுத்தது (iter_obj) # StopIteration தவிர உறுப்புடன் ஏதாவது செய்யுங்கள்: # StopIteration எழுப்பப்பட்டால், சுழற்சியில் இருந்து உடை உடைக்க

இப்போது நமக்குத் தெரியும், எப்படி வளையத்திற்கு ஒரு ஈட்டரேட்டராக வேலை செய்கிறது. பைத்தானில் தனிப்பயன் ஐடரேட்டர்களை எவ்வாறு செயல்படுத்தலாம் என்பதைப் புரிந்துகொள்வோம்.

தனிப்பயன் ஐடரேட்டர்கள்

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

class MyNumbers: def __iter __ (self): self.a = 1 return self def __ அடுத்த __ (self): x = self.a self.a + = 1 return x myclass = MyNumbers () myiter = iter (myclass) print (அடுத்த ( myiter)) அச்சு (அடுத்த (myiter)) அச்சு (அடுத்த (myiter))

வெளியீடு: ஒன்று

2

3

தனிப்பயன் ஐடரேட்டர்களை எவ்வாறு செயல்படுத்தலாம் என்பது இப்போது எங்களுக்குத் தெரியும், பைத்தானில் எல்லையற்ற ஐட்டரேட்டர்களைப் பார்ப்போம்.

எல்லையற்ற ஈட்டரேட்டர்கள்

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

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

இதைப் புரிந்துகொள்ள ஒரு உதாரணத்தை எடுத்துக் கொள்வோம்

class MyNumbers: def __iter __ (self): self.a = 1 return self def __ அடுத்த __ (self): x = self.a self.a + = 1 return x myclass = MyNumbers () myiter = iter (myclass) print (அடுத்த ( myiter)) print (next (myiter)) print (next (myiter)) print (next (myiter)) print (next (myiter))

வெளியீடு: ஒன்று
2
3
4
5

மேலே உள்ள எடுத்துக்காட்டில், நாங்கள் அச்சு அறிக்கையைச் சேர்த்துக் கொண்டிருக்கும் வரை மரணதண்டனை தொடரும். எல்லையற்ற ஐடரேட்டர்களை நிறுத்த, நாங்கள் stopIteration அறிக்கையைப் பயன்படுத்த வேண்டும்.

உபுண்டுவில் ஹடூப் அமைத்தல்

நிறுத்து

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

class MyNumbers: def __iter __ (self): self.a = 1 return self def __ அடுத்த __ (self): if self.a & ampampamplt = 5: x = self.a self.a + = 1 return x else: எழுப்பு StopIteration myclass = MyNumbers () மைட்டரில் x க்கு myiter = iter (மைக்ளாஸ்): அச்சு (x)

வெளியீடு: ஒன்று
2
3
4
5

இப்போது விரைவில் நிபந்தனை தவறானது, மரணதண்டனை வேறு தொகுதிக்கு நகரும், மற்றும் மறுப்பு நிறுத்தப்படும். இப்போது பைத்தானில் உள்ள ஈட்டரேட்டர்களின் வேறு சில எடுத்துக்காட்டுகளைப் பார்ப்போம்.

பைதான் இட்டரேட்டர் எடுத்துக்காட்டுகள்

பைத்தானில் உள்ள ஈட்டரேட்டர்களின் இன்னும் சில எடுத்துக்காட்டுகள் இங்கே.

my_obj = ['எடுரேகா', 'பைதான்', 'ஐரேட்டர்'] iter_obj = iter (my_obj) அச்சு (அடுத்த (iter_obj))

வெளியீடு: எடுரேகா

இந்த எடுத்துக்காட்டில், டுபிலை மீண்டும் செய்யக்கூடிய பொருளாகப் பயன்படுத்துகிறோம்.

my_obj = ('எடுரேகா', 'பைதான்', 'ஐரேட்டர்') iter_obj = iter (my_obj) அச்சு (அடுத்த (iter_obj))

வெளியீடு: எடுரேகா

பைத்தானில் நாம் ஒரு சரத்தை மீண்டும் செய்யக்கூடிய பொருளாகப் பயன்படுத்தலாம்.

my_obj = 'எடுரேகா' iter_obj = iter (my_obj) அச்சு (அடுத்தது (iter_obj))

வெளியீடு: இருக்கிறது

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

“பைதான் இட்டரேட்டர்கள்” குறித்த இந்த கட்டுரையை நீங்கள் கண்டால், பாருங்கள் உலகம் முழுவதும் பரவியுள்ள 250,000 க்கும் மேற்பட்ட திருப்தியான கற்றவர்களின் வலைப்பின்னலுடன் நம்பகமான ஆன்லைன் கற்றல் நிறுவனம்.

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

நீங்கள் ஏதேனும் கேள்விகளைக் கண்டால், “பைதான் இட்டரேட்டர்கள்” இன் கருத்துகள் பிரிவில் உங்கள் எல்லா கேள்விகளையும் கேட்க தயங்க. எங்கள் குழு பதிலளிப்பதில் மகிழ்ச்சி அடைவார்கள்.