பைத்தானில் குறிப்பு எதிராக மதிப்பு

Pass Reference Vs



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

பைதான் பொருள் குறிப்பு மூலம் பாஸை ஆதரிக்கிறது

பாஸ்-பை-ரெஃபரென்ஸ் மற்றும் பாஸ்-பை-மதிப்பு ஆகியவை நிரலாக்க மொழிகளுக்கு இடையில் கடந்து செல்லும் அளவுருவுக்கு நன்கு அங்கீகரிக்கப்பட்ட மற்றும் எளிதில் புரிந்துகொள்ளக்கூடிய இரண்டு வழிகள். பைதான், துரதிருஷ்டவசமாக, ‘பாஸ்-பை-ஆப்ஜெக்ட்-ரெஃபரன்ஸ்,’ பாஸ் பை வேல்யூ அல்லது பாஸ் பை ரெஃபரன்ஸ், பெரும்பாலும் அழைப்பு மூலம் ஆப்ஜெக்ட் ரெஃபரன்ஸ், கால் மூலம் பகிர்தல் என அழைக்கப்படுகிறது. குறிப்பைக் கடந்து செல்லும் தொழில்நுட்ப விவரக்குறிப்புகளில் நீங்கள் மூழ்கும்போது, ​​கருத்தை பிரிவுகளாகப் பிரிப்பதன் மூலம் மிகவும் நெருக்கமாகப் பார்ப்பது பயனுள்ளது:







தேர்ச்சி: இது ஒரு வாதத்துடன் ஒரு முறையை வழங்குவதாகும்.



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



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





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



தற்போது, ​​உள்ளே செல்லும் அளவுரு ஒரு பொருளுக்கு ஒரு சுட்டிக்காட்டி. சில வகையான தரவு மாறக்கூடியது, சில மாறாதவை.

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

குறிப்பு மூலம் அனுப்பவும்

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

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

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

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

மதிப்பில் தேர்ச்சி

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

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

குறிப்பு மூலம் பொருள் அனுப்பவும்

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

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

முடிவுரை

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