எளிய தமிழில் Python -8

7. Operators (செயற்குறிகள்) :

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

7.1 Arithmetic Operators :

ஒரு ArithmeticOperator என்பது ஒரு கணித செயல்பாடாகும், இவை பொதுவான கணிதத்தில் பயன்படுத்தப்படுகின்றன மற்றும் பெரும்பாலான கணினி மொழிகளில் இதுபோன்ற operators ஒரு தொகுப்பினைக் கொண்டிருக்கிறது, இது பல செயல்களை செய்ய இவை பயன்படுத்தப்படுகின்றது.

Addition :

இரண்டு அல்லது அதற்கு மேற்பட்ட value-வினை கூட்டுவதற்கு addition operator(+) பயன்படுகிறது.

Subtraction :

இரண்டு அல்லது அதற்கு மேற்பட்ட value-வினை கழிப்பதற்கு subtraction operator(-) ஆனது பயன்படுகிறது.

Multiplication :

இரண்டு அல்லது அதற்கு மேற்பட்ட value-வினை பெருக்குவதற்கு multiplication operator(*) ஆனது பயன்படுகிறது.

Division:

இரண்டு அல்லது அதற்கு மேற்பட்ட value-வினை வகுப்பதற்கு division operator(/) ஆனது பயன்படுகிறது.

Modulus:

இரண்டு அல்லது அதற்கு மேற்பட்ட value-வினை வகுக்கும் போது மீதியுடன் கிடைத்தால் அந்த மீதமுள்ள value-வினை modules ஆகவும் இதுவே அதன் operator(%) ஆகும்.

Exponent:

Exponent என்பது அடுக்காகும்.இங்கு exponent operator(**) ஆக பயன்படுத்தபடுகிறது.இவற்றில் 2**3 or 23 என்பதில் 2-ன் அடுக்கு 3 என்பதே இதன் அர்த்தமாகும்.

Floor Division:

இரண்டு அல்லது அதற்கு மேற்பட்ட value-வினை வகுக்கும் போது கிடைக்கின்ற ஈவு ஆனது float ஆக இல்லாமல் integer ஆக இருக்கின்ற மதிப்பினை floor division என்கிறோம்.இதன் operator(//) என்பதாகும்.

உதாரணமாக :

7.2 ஒப்பீட்டுச் செயற்குறிகள் (Comparison Operators) :

Comparison operator என்பது இரண்டு எண்களை ஒப்பிட்டு அவற்றின் தன்மையைக் கூறுவதற்கு பயன்படுவதாகும். பைத்தானில் எட்டு ஒப்பீட்டு நடவடிக்கைகள் உள்ளன. அவர்கள் அனைவரும் ஒரே முன்னுரிமை (இது boolean நடவடிக்கைகளை விட அதிகமாக உள்ளது). ஒப்பீடுகளை தன்னிச்சையாக பிணைக்கலாம்.

Equal(==) :

இரு varible-ன் மதிப்பு சமமாக இருப்பதற்கு equal operator பயன்படுத்தபடுகிறது.இதன் operator(==)ஆகும்.

Not equal(!=) :

இரு varible-ன் மதிப்பு சமம் இல்லைஎன்பதற்கு Not equal operator பயன்படுத்தபடுகிறது. இதன் operator(!=)ஆகும்.

 

Greater than(>) :

இரு varible-ன் மதிப்பில் வலது பக்க மதிப்பினை விட இடது பக்க மதிப்பு பெரியதாக இருப்பதை குறிப்பிடுவதற்கு இவ்வகை operator(>) பயன்படுகிறது.

 

Less than(<) :

இரு varible-ன் மதிப்பில் வலது பக்க மதிப்பினை விட இடது பக்க மதிப்பு சிறியதாக இருப்பதை குறிப்பிடுவதற்கு இவ்வகை operator(<) பயன்படுகிறது.

Greater than equal(>=) :

இரு varible-ன் மதிப்பில் வலது பக்க மதிப்பினை விட இடது பக்க மதிப்பு பெரியதாக அல்லது சமமாக இருப்பதை குறிப்பிடுவதற்கு இவ்வகை operator(>) பயன்படுகிறது.

Less than equal(<=) :

இரு varible-ன் மதிப்பில் வலது பக்க மதிப்பினை விட இடது பக்க மதிப்பு சிறியதாக அல்லது சமமாக இருப்பதை குறிப்பிடுவதற்கு இவ்வகை operator(<) பயன்படுகிறது.

உதாரணமாக :

7.3 Assignment Operators :

Equal operand(=) :

வலது பக்க operand-லிருந்து இடது பக்க operand-க்கு மதிப்புகளை ஒதுக்குகிறது.

 

Add Equal operand(+=) :

இடது பக்க operand-ஐ வலது பக்க operand-ல் இடது பக்க operand-வுடன் variable-னை சேர்த்து இவை இடது பக்க operand-க்கு சமமாகும்.c += a அல்லது c=c+aஎன்பது c மற்றும் a னை சேர்த்து c என்ற variable-ல் store செய்யப்படும்.

 

Sub Equal operand(-=) :

இடது பக்க operand-ஐ வலது பக்க operand-ல் இடது பக்க operand-வுடன் variable-னை கழித்து இவை இடது பக்க operand-க்கு சமமாகும்.c += a அல்லது c=c-aஎன்பது c மற்றும் a னை கழித்து c என்ற variable-ல் store செய்யப்படும்.

 

Multiple Equal operand(*=) :

இடது பக்க operand-ஐ வலது பக்க operand-ல் இடது பக்க operand-வுடன் variable-னை பெருக்கி இவை இடது பக்க operand-க்கு சமமாகும்.c *= a அல்லது c=c*aஎன்பது c மற்றும் a னை பெருக்கி c என்ற variable-ல் store செய்யப்படும்.

Divide Equal operand(/=) :

இடது பக்க operand-ஐ வலது பக்க operand-ல் இடது பக்க operand-வுடன் variable-னை வகுத்து இவை இடது பக்க operand-க்கு சமமாகும்.c /= a அல்லது c=c/aஎன்பது c மற்றும் a னை வகுத்து c என்ற variable-ல் store செய்யப்படும்.

 

Modulus Equal operand(%=) :

இடது பக்க operand-ஐ வலது பக்க operand-ல் இடது பக்க operand-வுடன் variable-னை  வகுக்கும் போது மீதியுடன் கிடைத்தால் அந்த மீதமுள்ள value-வினை modules.இவை இடது பக்க operand-க்கு சமமாகும்.c %= a அல்லது c=c%aஎன்பது c மற்றும் a னை வகுக்கும் போது மீதியுடன் கிடைத்தால் அந்த மீதமுள்ள மதிப்பு c என்ற variable-ல் store செய்யப்படும்.

 

Exponent Equal operand(**=) :

இடது பக்க operand-ஐ வலது பக்க operand-ல் இடது பக்க operand-வுடன் variable-னை exponent ஆகி இவை இடது பக்க operand-க்கு சமமாகும்.c **= a அல்லது c=c**aஎன்பது c ஆனது a னை அடுக்காகி c என்ற variable-ல் store செய்யப்படும்.

Floor DivisionEqual operand(//=) :

இடது பக்க operand-ஐ வலது பக்க operand-ல் இடது பக்க operand-வுடன் variable-னை வகுக்கும் போது கிடைக்கின்ற ஈவு ஆனது float ஆக இல்லாமல் integer ஆக இருக்கின்ற மதிப்பு ஆனதுஇடது பக்க operand-க்கு சமமாகும்.c //= a அல்லது c=c//aஎன்பது c மற்றும் a னை வகுத்து கிடைகின்ற floor division ஆனது c என்ற variable-ல் store செய்யப்படும்.

உதாரணமாக :

7.4 Bitwise Operators :

 

Bitwise operator ஆனதுbit-கள்மூலம் இயங்குகிறது.மேலும் இவைbit-by-bit செயல்பாட்டை செய்கின்றது.வெவ்வேறு மொழிகள் இருந்தாலும் அனைத்தையும் கணிப்பொறியானது bit ஆக மாற்றியே புரிந்துக் கொள்ளும்.

இங்கு bit என்பது 0 மற்றும் 1 ஆகும்.இதில் bitwise operator என்பது ஆறுவிதமான operator-களை கொண்டுள்ளது.அது பின்வருமாறு and,or,xor,complement,left shift left shift மற்றும் right shift என்பவை bitwise operator-களாகும்.இதில் ஒவ்வொன்றினை பற்றியும் பின்வருமாறு தனித்தனியாக காணலாம்.

 

and(&):

and operator என்பது இரண்டு operands-ஐ and(பெருக்குல்) செய்வதற்கு பயன்படுகிற operator ஆனது and(&) ஆகும்.

 

or(|):

or operator என்பது இரண்டு operands-ஐ or அதாவது கூட்டுவதற்கு பயன்படுகிற operator ஆனது or(|) ஆகும்.இதில் குறைந்தது ஒரு நிபந்தனை நிறைவேற்றப்படும்.

 

xor(^):

xor operator என்பது இரண்டு operands-ஐ xor function-ஐ செய்வதற்கு பயன்படுகிற operator ஆனது xor(^) ஆகும்.

 

Complement(~):

complement operator என்பது operands-ஐ inverse function-ஐ செய்வதற்கு பயன்படுகிற operator ஆனது complement(~) ஆகும்.அதாவது 0 ஆனது 1 ஆகவும்,1 ஆனது 0 ஆகவும் மாற்றப் படுவதே complement.

 

Left shift(<<):

Left shift operator என்பது operands-ல் உள்ள bit-ல் இடது பக்கமாக shift செய்யபடுகிறது.இதற்கு பயன்படுகிற operator ஆனது leftshift(<<) ஆகும்.

 

right shift(>>):

right shift operator என்பது operands-ல் உள்ள bit-ல் வலது பக்கமாக shift செய்யபடுகிறது.இதற்கு பயன்படுகிற operator ஆனது rightshift(>>) ஆகும்.

பின்வரும் உதாரணமானது bitwise operator-ஐ நன்கு விளக்கும்.

7.5 Logical operator :

 

Logical operator என்பது logical function-ஆன and,or,not செய்வதற்கு உதவுகின்ற operator ஆனது logical operator ஆகும்.

Logical operator ஆனது இரண்டு operands-க்கு இடையில் பயன்படுத்தபடும். இரண்டு operand-ம் எப்படி இருக்கிறது என்பதை logical operator மூலம் தெரிந்து கொள்ளலாம். Logical operator ஆனது bits அதாவது 0 மற்றும் 1-ல் மட்டுமே செயல்படும்.

 

AND:

AND operator என்பது இரண்டு operands-ஐ and(பெருக்குல்) செய்வதற்கு பயன்படுகிற operator ஆனது and ஆகும்.இவை and என்றே பயன்படுத்தபடும்.

OR:

OR operator என்பது இரண்டு operands-ஐ or அதாவது கூட்டுவதற்கு பயன்படுகிற operator ஆனது or ஆகும்.இதில் குறைந்தது ஒரு நிபந்தனை நிறைவேற்றப்பட வேண்டும்.இவை or என்றே பயன்படுத்தபடும்.

NOT :

NOT operator என்பது operand மதிப்பினை complement செய்வதற்கு இவை உதவுகிறது.

Logical operator-ன் உதாரணமானது கீழே காண்பிக்க பட்டுள்ளது.இவற்றில் 0 என்பது true ஆகவும்,1 என்பது false ஆகவும் இருக்கும்.

மேலே உள்ள படத்தில் a=1,b=0.இதனை and அதாவது பெருக்கும் போது (1*0=0) சுழியம்(0) வருகிறது. பின் or அதாவது கூட்டும் போது (1+0=1) ஒன்று(1) வருகிறது.

a=1,not(a) என்பது 0. ஆகவே false என்றும் b=0,not(b) என்பது 1.ஆகவே true  என்றும் காணப்படுகிறது.

 

7.6 Membership Operators :

 

Membership Operators என்பது சோதித்து பார்ப்பதற்காகவே இவ்வகை operator ஆனது பயன்படுத்தப்படுகிறது.இவை strings, lists மற்றும் tuples பயன்படுத்தலாம்.இதில் இருவகை operator உள்ளது.அவை

 

in :

        in ஆனது ஒரு operand-ல் இருந்து மற்றொரு operand-ஐ சோதித்து பார்க்கிறது.இரு operand-லும் ஒரே மாதிரியாக இருந்தால் True என்று display செய்யும். இரு operand-லும் ஒரே மாதிரியாக எதுவும் இல்லை என்றால் False  என்று display செய்யும்.

 

not in :

        in-ஐ போன்றே not in-ம் சோதித்து பார்க்கிறது.இரு operand-லும் ஒரே மாதிரியாக எதுவும் இல்லை என்றால் True என்று display செய்யும். இரு operand-லும் ஒரே மாதிரியாக ஏதாவது இருந்தால் False  என்று display செய்யும்.

இங்கு a என்ற list-ல் 1 முதல் 5 வரை எண்கள் இருக்கின்றன.b என்ற list-ல் 6 என்ற எண் உள்ளது.5 என்ற எண் ஆனது a என்கிற list-னை check செய்கிறது. 5 என்ற எண் a-ல் இருப்பதால் True என்று கிடைக்கிறது.அதே போன்று  b என்கிற list-ல் உள்ளதை a என்கிற list-ல் check செய்கிறது. b என்பது a-ல் இல்லாததால் இங்கு False என்று கிடைக்கிறது.

b என்கிற list-ல் உள்ளது a என்கிற list-ல் இல்லையா என்று check செய்கிறது. b என்பது a-ல் இல்லாததால் இங்கு True என்று கிடைக்கிறது.

அதே போன்று 5 என்பது a என்கிற list-ல் இல்லையா என்று check செய்கிறது. 5 என்பது a-ல் இருப்பதால் இங்கு False என்று கிடைக்கிறது.

 

7.7 Identity Operators:

 

Identity operators என்பது இரு நினைவகத்தை கூடிய object-னை ஒப்பிடுவதற்கு  பயன்படுகின்ற operator ஆனது identity operator என்று அழைக்கிறோம்.

 

is :

      is ஆனது இரு variable-க்கு இடையில் பயன்படுத்தப்படும். இரு variable-ன் மதிப்பு ஒரே மாதிரியாக இருந்தால் True என்றும் வெவ்வேறாக இருந்தால் False என்றும் display செய்யும்.

 

is not :

      is not ஆனது இரு variable-க்கு இடையில் பயன்படுத்தப்படும். இரு variable-ன் மதிப்பு ஒரே மாதிரியாக இருந்தால் False என்றும் வெவ்வேறாக இருந்தால் True என்றும் display செய்யும்.

இதில் a-யும் b-யும் வெவ்வேறாக இருக்கின்றது.அதேபோன்று id-யும் வெவ்வேறாக இருக்கின்றது.ஆகவே a is b என்று வரும்போது False-ம் a is not b என்று வரும்போது True என்றும் வரும்.பிறகு c,d,e என்கிற variable-ஐ பார்த்தால் நன்கு தெரியும்.c மற்றும் e என்ற variable-ன் objects ஆனது ஒரேமாதிரியாகவும் அதன் id-யும் ஒரேமாதிரியாக இருப்பதால் is operator பயன்படுத்தும் போது True ஆக இருப்பதை காணலாம். c மற்றும் e என்ற variable-ன் objects ஆனது ஒரேமாதிரியாகவும் அதன் id-யும் ஒரேமாதிரியாக இருப்பதால் is not operator பயன்படுத்தும் போது False என்று தென்படும்.

-தொடரும்.

எழுதியவர்: 

செ.பாலகணேசன் 

ganesanluna@yahoo.in

 

%d bloggers like this: