Mar 6, 2013

ஓப்பன் சோர்ஸின் ஒப்பில்லா மொழி பைத்தான் - அடிப்படைகள் 2

Logical and Physical Lines

நாம் நிரல் எழுதும் போது ஒரு Single Line ஆக எதைப் பார்க்கிறமோ அது Physical Line எனப்படும்.

ஒரு Single Statement ஐ பைத்தான் எடுத்துக் கொள்வது Logical Line எனப்படும். ஒரு Physical Line -ல் எத்தனை Logical Line வேண்டுமானாலும் இருக்கலாம்.

print 'Hello World' - என்பது ஒரு Logical Line அதே நேரத்தில் இது ஒரு Physical Line -னும் ஆகும்.

ஒரு Single Physical Line -ல் ஒன்றுக்கு மேற்பட்ட Logical Lines களை கொடுக்க வேண்டுமானால் ; (semi colon) ஐ பயன்படுத்திக் கொடுக்கலாம். ;(semi colon) ஆனது ஒரு Logical Line முடிவடைவதைக் குறிக்கிறது.

உதாரணமாக:
i=45
print i
மேலே உள்ள இரண்டு statement களும் கீழ்காணும் விதமாகவும் இருக்கலாம்.
i=45;
print i;
அல்லது

i=45; print i;
அல்லது

i=45; print i

ஒரு வரியில் ஒரே ஒரு Logical Line எழுதுவதைதான் பைத்தான் மறைமுகமாக அதிகமாக பரிந்துரைக்கிறது.  ஏனென்றால் அவ்வாறு எழுதும் பொழுதுதான் நிரலானது படிக்கும் விதமாகவும், புரிந்து கொள்ளும் விதமாகவும் அமையும்.  பைத்தான் நிரலாளர்கள் யாரும் ; (Semi Colon) ஐ பைத்தானில் பயன்படுத்துவதில்லை.

Indentation

Whitespace என்பது பைத்தானில் மிகவும் முக்கியமான ஒன்று.  அதுவும் ஒரு line னினுடைய தொடக்கத்தில் whitespace என்பது மிகவும் முக்கியமானது.  இதுதான் Indentation என அழைக்கபடுகிறது.  இப்பொழுது இது தொடர்பான செய்திகளை மட்டும் தெரிந்து கொள்ளுங்கள். Control Flow Staments (for, while) களைப் பற்றி படிக்கும் படிக்கும் பொழுது விரிவாக பார்ப்போம்.

பைத்தானில் ஒரே Level -லில் இருக்கும் அனைத்து Statement களும் Block எனப்படும்.

உதாரணமாக:

i=45
 print i
print 'Hello World'
இந்த நிரலை இயக்கிப் பார்த்தீர்களேயானால் கீழ்கண்ட பிழைச்செய்திகள் உங்களுக்கு கிடைக்கும்.

elcot@boss:~/Documents/pyex$ python indentation.py 
  File "indentation.py", line 2
    print i
    ^
IndentationError: unexpected indent

Indent ஐ பயன்படுத்துவது எப்படி?

Tabs மற்றும் spaces இரண்டையும் கலந்து பயன்படுத்த வேண்டாம்.  இந்த முறை அனைத்து இயங்குதளங்களிலும் வேலை செய்யாது. ஆகையால் Single Tab என்பது பொதுவாக பைத்தான் நிரலுக்கு பரிந்துரைக்கப்படுகிறது. இரண்டு அல்லது நான்கு Spaces ஒவ்வொரு Indentation Level பயன்படுத்தலாம் என்ற போதிலும், Single Tab தான் பரிந்துரைக்கப்படுகிறது.

No comments: