பைதான் அடிப்படை கருத்துகள் – 4

3.1.4 List

பைதான் பல்வேறு data typeகளை கொண்டுள்ளது. அவை பல dataகளை ஒன்றாக பயன்படுத்த உதவுகின்றன.

இதில் முதன்மையானது list. இது ஒரு square bracket அதாவது []-க்குள் comma (,) மூலம் பல தகவல்களை தர வேண்டும்.

ஒரு list-ல் உள்ள தகவல்கள், ஒரே data type ஆக இருக்க வேண்டிய அவசியம் இல்லை.

 

 

>>> a = ['spam', 'eggs', 100, 1234] >>> a

[‘spam’, ‘eggs’, 100, 1234]

 

String-ல் உள்ள index எண் போலவே list-ன் index-ம் 0-ல் தொடங்குகிறது. ஒரு list-ஐ பல பாகங்களாக பிரிக்கலாம். பல துண்டுகளை இணைத்து ஒரு list செய்யலாம்.

 

>>> a[0] 'spam' 
>>> a[3] 1234 
>>> a[-2] 100 
>>> a[1:-1] ['eggs', 100] 
>>> a[:2] + ['bacon', 2*2] ['spam', 'eggs', 'bacon', 4] 
>>> 3*a[:3] + ['Boo!'] ['spam', 'eggs', 100, 'spam', 'eggs', 100, 'spam', 'eggs', 100, 'Boo!'] 
>>> a[:] ['spam', 'eggs', 100, 1234]

stringகளை நம் வசதிப்படி மாற்ற முடியாது. அவை immutable தன்மை கொண்டவை. ஆனால் listகளை நம் வசதிப்படி மாற்றிக் கொள்ளலாம்.

>>> a ['spam', 'eggs', 100, 1234] 
>>> a[2] = a[2] + 23 
>>> a ['spam', 'eggs', 123, 1234]

list-n துண்டுகளுக்கு value, assign செய்யலாம். இவ்வாறு செய்வது list-ன் size-ஐ கூட மாற்றலாம். அல்லது list-ஐ காலி கூட செய்து விடலாம்.

>>> # Replace some items: ... a[0:2] = [1, 12] 
>>> a [1, 12, 123, 1234] 
>>> # Remove some: ... a[0:2] = [] 
>>> a [123, 1234] 
>>> # Insert some: ... a[1:1] = ['bletch', 'xyzzy'] 
>>> a [123, 'bletch', 'xyzzy', 1234] 
>>> # Insert (a copy of) itself at the beginning 
>>> a[:0] = a 
>>> a [123, 'bletch', 'xyzzy', 1234, 123, 'bletch', 'xyzzy', 1234] 
>>> # Clear the list: replace all items with an empty list 
>>> a[:] = [] 
>>> a []

len() என்ற function ஒரு list-ன் size-ஐ தருகிறது.

 

>>> a = ['a', 'b', 'c', 'd'] 
>>> len(a) 4

ஒரு list-க்குள் மற்றொரு list அதாவது nested list கூட சாத்தியமே.

>>> q = [2, 3] 
>>> p = [1, q, 4] 
>>> len(p) 3 
>>> p[1] [2, 3] 
>>> p[1][0] 2 
>>> p[1].append('xtra')     # See section 5.1 
>>> p [1, [2, 3, 'xtra'], 4] 
>>> q [2, 3, 'xtra']

இதில் p[1]-ம் q-ம் ஒரே object –ஐயே குறிப்பதை காணலாம். Object-களை பற்றி பிறகு விரிவாக காணலாம்.

3.2 Programming-ல்குதிப்போம்:

சாதாரண, 2-ஐயும் 4-ஐயும் கூட்டுவது போன்ற எளிய கணக்குகள் மட்டுமின்றி, பைதானில் பெரிய பெரிய program-களை கூட செய்யலாம். ஒரு Fibbonacci series-க்கான புரோகிராமை இங்கு காணலாம்.

 

>>> # Fibonacci series: ... # the sum of two elements defines the next ... a, b = 0, 1 
>>> while b < 10: 
...     print b 
...     a, b = b, a+b 
... 1 1 2 3 5 8

இந்த உதாரணம் நமக்கு பல புதிய கருத்துகளை தருகிறது.

2. முதல் வரியில் multiple assignment உள்ளது. a மற்றூம் b என்ற variable-கள் ஒரே நேரத்தில் 0 மற்றும் 1 என்ற மதிப்புகளை பெறுகின்றன. கடைசி வரியிலும் இதே முறை பயன் படுத்தப் படுகிறது. வலது புறம் உள்ள கணக்கீடுகள் முடிந்த பின்பு அவற்றின் மதிப்பு, இடது புறம் உள்ள variableக்கு assign செய்ய படுகிறது.

3. While loop ஆனது தரப்பட்ட condition, அதாவது (b<100) true ஆக இருக்கும் வரை இயக்கப் படுகிறது. C-ஐ போலவே, பைதானிலும் 0 அல்லாத எந்த ஒரு எண்ணும் true-ஆக மதிக்கப்படும். 0-ன் மதிப்பு false. இதில் condition என்பது string ஆகவோ list ஆகவோ கூட இருக்கலாம். 0 அல்லாத எதுவுமே true ஆகும். காலி sequence என்பது false.

இந்த உதாரணத்தில் உள்ள condition, சாதாரண ஒப்பீடு(comparison) ஆகும். இதில் பின்வரும் comparison operator-களை பயன்படுத்தலாம். < (less than), > (greater than), == (equal to), <= (less than or equal to), >= (greater than or equal to), != (not equal to).

4. இந்த loop-ன் body ஆனது indent செய்யப் பட்டுள்ளது. சற்றே உள்ளடங்கி உள்ளது. இதுவே பைதானின் இயல்பு ஆகும். பல statementகளை ஒரு group-ஆக செயல்பட வைக்க, இவ்வாறு செய்ய வேண்டும். ஒரு tab அல்லது space மூலம் வரிகள் indent செய்ய வேண்டும். பிற மொழிகளில் உள்ளது போல் { } என்ற bracket பைதானில் பயன்படுவது இல்லை. அதற்கு பதிலாகவே இந்த index பயன்படுகிறது.

சில text editorகளில் auto indent வசதி உள்ளது. Manual ஆக செய்வதும் எளிதே. ஒரு block-ல் உள்ள எல்லா வரிகளும் ஒரே அளவு indent செய்திருத்தல் வேண்டும்.

5. print என்ற கட்டளை தரப்பட்ட expressionகளின் மதிப்பையே print செய்கிறது. ஒரே நேரத்தில் பல expression, மற்றும் stringகளையும் print செய்கிறது. Stringகள் quote இல்லமல் தரப்படுகின்றன. Space தருவதன் மூலம் outputகளை நன்கு சீராக தர முடிகிறது.

         256*256
>>> print 'The value of i is', i

The value of i is 65536

 

6. outputக்கு பிறகு புதிய வரி வருவதை ஒரு comma (,) தடுக்கிறது.

>>> a, b = 0, 1 
>>> while b < 1000: 
...     print b, 
...     a, b = b, a+b 
...

1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987

 

தொடரும்

(அடுத்த இதழில் Control Flow பற்றி பார்க்கலாம்)

 

%d bloggers like this: