Product SiteDocumentation Site

Chapter 7. ഡാറ്റാ ഘടന

7.1. ലിസ്റ്റുകള്‍
7.2. ലിസ്റ്റ് സ്റ്റാക്ക് ക്യൂ എന്നിവയുടെ പ്രയോഗം
7.3. ലിസ്റ്റ് കോമ്പ്രിഹെന്‍ഷന്‍
7.4. ടുപ്പിള്‍സ്
7.5. സെററുകള്‍
7.6. ഡിക്ഷണറികള്‍
7.7. students.py
7.8. matrixmul.py
പൈത്തണില്‍ സഹജമായ കുറച്ച് ഡാറ്റ ഘടനകള്‍ ഉണ്ട്. ഡാറ്റാ ഘടന എന്താണെന്നോ? അത് മറ്റൊന്നുമല്ല, വിവരത്തെ ശേഖരിക്കുന്നതിനും, തിരിച്ചെടുക്കുന്നതിനും, പരിവര്‍ത്തനം ചെയ്യുന്നതിനും ഉള്ള ശൈലികള്‍ അഥവാ മെതേഡ് അണ്. നാം മുന്‍പുതന്നെ ലിസ്റ്റ് എന്താണെന്ന് പരിചയപ്പെട്ടു! നമുക്ക് ലിസ്റ്റിനെ കുറച്ച് കൂടി അടുത്ത് പരിചയപ്പെടാം.

7.1. ലിസ്റ്റുകള്‍


>>> a = [23, 45, 1, -3434, 43624356, 234]
>>> a.append(45)
>>> a
[23, 45, 1, -3434, 43624356, 234, 45]

ആദ്യം നാം a എന്നൊരു ലിസ്റ്റ് ഉണ്ടാക്കി. അതിലേക്ക് 45 കൂട്ടിച്ചേര്‍ക്കാന്‍ a.append(45) എന്ന മെതേഡ് ഉപയോഗിച്ചു. ഇപ്പോള്‍ ലിസ്റ്റിന്റെ അവസാനം 45 കൂട്ടിച്ചേര്‍ക്കപ്പെട്ടതായി നിങ്ങള്‍ക്ക് കാണാം. ചിലപ്പോള്‍ നമുക്ക് ലിസ്റ്റിന്റെ ഏതെങ്കിലും ഒരുഭാഗത്ത് പൂതിയ ഡാറ്റ കൂട്ടിച്ചേര്‍ക്കേണ്ടതായി വരാം, അതിനായി നമുക്ക് insert()എന്ന മെതേഡ് ഉപയോഗിക്കാവുന്നതാണ്.

>>> a.insert(0, 1) # 1 added at the 0th position of the list
>>> a
[1, 23, 45, 1, -3434, 43624356, 234, 45]
>>> a.insert(0, 111)
>>> a
[111, 1, 23, 45, 1, -3434, 43624356, 234, 45]

count(s) s എത്ര പ്രാവശ്യം ലിസ്റ്റില്‍ ആവര്‍ത്തിച്ചു എന്ന് പറഞ്ഞുതരുന്നു. ഇനി 45 എത്ര പ്രാവശ്യം ലിസ്റ്റില്‍ ആവര്‍ത്തിച്ചിരിക്കുന്നു എന്ന് നോക്കാം.

>>> a.count(45)
2

ഇനി താങ്കള്‍ക്ക് ലിസ്റ്റില്‍ നിന്നും ഏതെങ്കിലും മൂല്യം നീക്കം ചെയ്യണമെങ്കില്‍ remove() എന്ന മെതേഡ് ഉപയോഗിക്കാം.

>>> a.remove(234)
>>> a
[111, 1, 23, 45, 1, -3434, 43624356, 45]

ഇനി ലിസ്റ്റിന്റെ ക്രമം തിരിച്ചാക്കുന്നതിന് reverse() എന്ന മെതേഡ് ഉപയോഗിക്കാം.

>>> a.reverse()
>>> a
[45, 43624356, -3434, 1, 45, 23, 1, 111]

ഒരു ലിസ്റ്റിനുള്ളില്‍ നമുക്ക് പലതരത്തിലുള്ള വിവരങ്ങള്‍(ഡാറ്റ) ഉള്‍ക്കൊള്ളിക്കാം. നമുക്ക് a യിലേക്ക് b എന്ന ലിസ്റ്റ് (അതിലെ എല്ലാമൂല്യങ്ങളെയും) കൂട്ടിച്ചേര്‍ക്കുന്നത് എങ്ങിനെയെന്ന് നോക്കാം.

>>> b = [45, 56, 90]
>>> a.append(b)
>>> a
[45, 43624356, -3434, 1, 45, 23, 1, 111, [45, 56, 90]]
>>> a[-1]
[45, 56, 90]
>>> a.extend(b) #To add the values of b not the b itself
>>> a
[45, 43624356, -3434, 1, 45, 23, 1, 111, [45, 56, 90], 45, 56, 90]
>>> a[-1]
90

മുകളില്‍ക്കൊടുത്തിരിക്കുന്ന ഉദാഹരണത്തിലൂടെ ലിസ്റ്റിനെ വലുതാക്കുന്നതിന് a.extend() എങ്ങിനെ ഉപയോഗിച്ചു എന്ന് നിങ്ങള്‍ക്ക് കാണാവുന്നതാണ്. ഒരു ലിസ്റ്റിനെ ക്രമത്തിലാക്കുന്നതിന് അഥവാ ചിട്ടപ്പെടുത്തുന്നതിന് sort() എന്ന മെതേഡ് ഉപയോഗിക്കാം.

>>> a.sort()
>>> a
[-3434, 1, 1, 23, 45, 45, 45, 56, 90, 111, 43624356, [45, 56, 90]]

ഒരു ലിസ്റ്റിന്റെ പ്രത്യേകസ്ഥാനത്തിരിക്കുന്ന ഒരു മൂല്യത്തെ(എലമന്റ്) നീക്കം ചെയ്യുന്നതിന് del എന്ന കീ വേഡ് ഉപയോഗിക്കുന്നു.

>>> del a[-1]
>>> a
[-3434, 1, 1, 23, 45, 45, 45, 56, 90, 111, 43624356]