പൈത്തണിന്റെ ലോകത്തേക്ക് വായനക്കാര്‍ക്ക് സുസ്വാഗതം. പൈത്തണ്‍ എന്ന പ്രോഗ്രാമിങ്ങ് ലാങ്ഗ്വേജ് പഠിപ്പിക്കാനുള്ള ശ്രമമാണിവിടെ. ആരംഭം മുതലുള്ള പോസ്റ്റുകളുടെ ലിങ്കുകള്‍ ഇടതു വശത്തു കാണാം. ആര്‍ക്കും പഠിക്കാം. ആര്‍ക്കും സംശയങ്ങള്‍ ചോദിക്കാം. വിലക്കുകളോ മോഡറേഷനുകളോ ഇല്ല.

പൈത്തണ്‍: പാഠം മൂന്ന്

>> Monday, June 28, 2010

ഈ പാഠത്തില്‍: പൈത്തണ്‍ ഷെല്‍, IDLE, ചരങ്ങളും പ്രോഗ്രാമിലേക്ക് ഇന്‍പുട്ട് എടുക്കാനുള്ള ഒരു രീതിയും.

ആമുഖം


കഴിഞ്ഞ രണ്ടു പാഠങ്ങളിലായി കണ്ട ചെറിയ പ്രോഗ്രാമുകള്‍ എഴുതി പ്രവര്‍ത്തിപ്പിച്ചുനോക്കിക്കാണുമല്ലോ. ഒരു എഡിറ്റര്‍ (ഉദാ: gedit) ഉപയോഗിച്ച് പ്രോഗ്രാം ഒരു ഫയലില്‍ എഴുതി സൂക്ഷിച്ച്, ടെര്‍മിനലില്‍ python filename എന്ന കമാന്റുപയോഗിച്ച് പ്രോഗ്രാം പ്രവര്‍ത്തിപ്പിക്കുക എന്നതാണ് ഈ പ്രോഗ്രാമുകള്‍ക്ക് നാമവലംബിച്ച രീതി. ഇത് തികച്ചും ശരിയായ രീതിതന്നെയാണെങ്കിലും ഇതിന് ഒരു പോരായ്മയുണ്ട്. ഗണിതക്രിയകളുടെ പ്രോഗ്രാം ഉപയോഗിച്ച് പരീക്ഷണങ്ങള്‍ നടത്തുമ്പോഴാണ് ഈ കുറവ് നമുക്ക് ശരിക്കു ബോധ്യപ്പെടുക. ഇതെന്താണെന്നുവച്ചാല്‍, പുതിയ ഓരോ കാര്യം പരീക്ഷിച്ചുനോക്കാനും നാം രണ്ടു കാര്യങ്ങള്‍ ചെയ്യണം. ഉദാഹരണത്തിന്, 2 ** 1/2 എന്നെഴുതിയാല്‍ രണ്ടിന്റെ വര്‍ഗമൂലം കിട്ടുമോ എന്നറിയാന്‍ താഴെപ്പറയുന്ന കാര്യങ്ങള്‍ ചെയ്യണം:
  1. gedit-ല്‍ print "The square root of 2 is ", 2 ** 1/2 എന്ന വരി പ്രോഗ്രാമില്‍ ചേര്‍ത്ത് ഫയല്‍ സേവ് ചെയ്യുക.
  2. ടെര്‍മിനലിലേക്ക് മാറി python calc.py എന്ന കമാന്റ് കൊടുക്കുക.
കിട്ടിയ ഉത്തരം -- 1 -- തെറ്റാണെന്ന് കാണുമ്പോള്‍ ഘാതത്തിന് (കൃതിക്ക്) ഹരണത്തെക്കാള്‍ മുന്‍ഗണനയുള്ളതുകൊണ്ടാവാം ഇതു സംഭവിച്ചത് എന്നു നാം സംശയിക്കുന്നു. അങ്ങനെയാണെങ്കില്‍ 2 ** (1/2) എന്നുചെയ്താല്‍ ശരിയുത്തരം കിട്ടണം. ഇതുപരീക്ഷിച്ചുനോക്കാന്‍ നാം മേല്‍പ്പറഞ്ഞ രണ്ടു കാര്യങ്ങള്‍ --- ഫയലില്‍ നമുക്കുവേണ്ട മാറ്റങ്ങള്‍ വരുത്തി സേവ് ചെയ്യുക, ടെര്‍മിനലില്‍ പൈത്തണ്‍ ദ്വിഭാഷിയെ ഫയല്‍ ഏല്‍പ്പിക്കുക --- വീണ്ടും ചെയ്യണം. ഇത്തവണയും ഉത്തരം തെറ്റാണെങ്കില്‍ ഇനിയൊരു മാറ്റം വരുത്താനും ഇതേപോലെ രണ്ടുകാര്യങ്ങള്‍ ചെയ്യണം. ഇത് വലിയ ബുദ്ധിമുട്ടുള്ള കാര്യമല്ലെങ്കിലും ചെറിയ ബുദ്ധിമുട്ടുള്ള കാര്യമാണ്. ഒരു ദിവസം നൂറുകണക്കിനു തവണ ഇതു ചെയ്യേണ്ടി വരുമ്പോള്‍ (പ്രോഗ്രാമിംഗ് ജോലിക്കോ ഹോബിയായോ ചെയ്യുമ്പോള്‍ ഇത് ഒട്ടും വിരളമല്ല) ഈ ചെറിയ ബുദ്ധിമുട്ടൊരു വലിയ ബുദ്ധിമുട്ടാകും. ഈ ബുദ്ധിമുട്ട് ഒഴിവാക്കാനുള്ള ഒരു ഉപായമാണ് "പൈത്തണ്‍ ഷെല്‍".

പൈത്തണ്‍ ദ്വിഭാഷിയുടെ മറ്റൊരു മുഖം


പൈത്തണ്‍ പ്രോഗ്രാമുകള്‍ പ്രവര്‍ത്തിപ്പിക്കാന്‍ നാം ഇതുവരെ ചെയ്തത് പ്രോഗ്രാം ഒരു ഫയലിലെഴുതി ആ ഫയല്‍ പൈത്തണ്‍ ദ്വിഭാഷിക്ക് കൈമാറുക എന്നതാണല്ലോ. പൈത്തണ്‍ ദ്വിഭാഷിയുമായി സംവദിക്കാന്‍ മറ്റൊരു രീതികൂടി നിലവിലുണ്ട്. ഫയല്‍ ഉപയോഗിച്ചുള്ള രീതിയെക്കാള്‍ ജീവത്തായ, ചുറുചുറുക്കുള്ള രീതിയാണിത്. ഇവിടെ നാം ചോദിക്കുന്ന ചോദ്യത്തിന് പൈത്തണ്‍ ഉടനടി ഉത്തരം തരും; അടുത്ത ചോദ്യം കേ‌ള്‍ക്കാന്‍ തയ്യാറായി നില്‍ക്കുകയും ചെയ്യും. പൈത്തണുമായി ഒരു സല്ലാപം എന്നുവേണമെങ്കില്‍ ഈ രീതിയെ വിശേഷിപ്പിക്കാം. ചെറിയ ചോദ്യങ്ങള്‍ക്ക് (ഉദാ: 2 ** (1/2) എന്നതിന്റെ വിലയെത്ര) പെട്ടെന്ന് ഉത്തരം കിട്ടും എന്നതാണ് ഈ രീതിയുടെ ഒരു പ്രധാന ഗുണം. പ്രോഗ്രാം എഴുതുമ്പോള്‍ ഉണ്ടാകുന്ന ചെറിയ സംശയങ്ങള്‍ പെട്ടെന്ന് തീര്‍ക്കാനും, താരതമ്യേന വലുതായ ഒരു പ്രോഗ്രാമെഴുതുമ്പോള്‍ ചെറിയ ചെറിയ പ്രോഗ്രാം "കഷണങ്ങള്‍" ശരിയാണോ എന്ന് പരീക്ഷിച്ചുനോക്കാനും ഈ രീതി വളരെ ഫലവത്താണ്.

പൈത്തണുമായി സല്ലപിക്കാന്‍ ചെയ്യേണ്ടത് ഇത്രമാത്രം‌: ടെര്‍മിനല്‍ തുറന്ന് python എന്ന കമാന്റ് കൊടുക്കുക. ഇതിനുമുമ്പ് ചെയ്തതില്‍നിന്ന് വ്യത്യസ്തമായി ഫയലിന്റെ പേര് കൊടുത്തിട്ടില്ല എന്നത് ശ്രദ്ധിക്കുക.താഴെക്കാണുന്നതുപോലെ >>> എന്ന ഒരു പ്രോംപ്റ്റ് (കമാന്റുകള്‍ കൊടുക്കാനുള്ള സൂചകം) തുറന്നുവരുന്നതുകാണാം. ഇതാണ് പൈത്തണ്‍ ഷെല്‍ (Python shell):

$ python
Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

>>> എന്നു കാണുന്നിടത്ത് പൈത്തണ്‍ ഭാഷയിലുള്ള പ്രോഗ്രാം ശകലങ്ങള്‍ കൊടുക്കാം. Enter അമര്‍ത്തിയാല്‍ ഉടനടി ഉത്തരവും കിട്ടും. ഉദാഹരണത്തിന്, കഴിഞ്ഞ പാഠത്തില്‍ക്കണ്ട ചില ക്രിയകള്‍ ഷെല്‍ ഉപയോഗിച്ച് ചെയ്യുമ്പോള്‍‍:

$ python
Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 5 + 3
8
>>> 5 - 3
2
>>> 5 * 3
15
>>> 5 / 2
2
>>> 5 ** 3
125
>>> print 5 ** 3
125
>>> print "5 + 3 = ", 5 + 3
5 + 3 =  8
>>> 5 / 2.0
2.5
>>> 355 / 113.0
3.1415929203539825
>>> quit()
$ 

ശ്രദ്ധിക്കേണ്ട കാര്യങ്ങള്‍:
  • ഫയലില്‍ പ്രോഗ്രാമെഴുതിയതില്‍നിന്ന് വ്യത്യസ്തമായി,
    • ഷെല്ലില്‍ ഔട്പുട്ട് കാണാന്‍ print എന്ന് പറയേണ്ട കാര്യം മിക്കയിടത്തുമില്ല. ഒരു പൈത്തണ്‍ ശകലം കൊടുത്താല്‍ അതിന്റെ വില (അത് പ്രവര്‍ത്തിപ്പിച്ചുകിട്ടുന്ന ഫലം) അടുത്ത വരിയില്‍ തനിയെ വരും.
    • ഷെല്ലിലെഴുതിയ പ്രോഗ്രാം സ്ഥായിയല്ല; ഒരു ഫയലിലും അത് തനിയെ സേവ് ചെയ്യപ്പെടുന്നില്ല.വേണമെങ്കില്‍ നമുക്ക് എഡിറ്ററിലേക്ക് കോപ്പി-പേസ്റ്റ് ചെയ്ത് സൂക്ഷിക്കാം എന്നുമാത്രം.
  • ഷെല്ലില്‍നിന്ന് പുറത്തുകടക്കാന്‍ quit() എന്ന് ഒരു പുതിയ വരിയില്‍ എഴുതി Enter അമര്‍ത്തുക.

സമഗ്ര പൈത്തണ്‍ പ്രോഗ്രാം വികസന പദ്ധതി

പൈത്തണ്‍ പ്രോഗ്രാമുകള്‍ എഴുതി പ്രവര്‍ത്തിപ്പിച്ചുനോക്കാനുള്ള രണ്ടു വഴികള്‍ നാം കണ്ടു: ഫയല്‍/ടെര്‍മിനല്‍ എന്നിവ ഉപയോഗിക്കുന്ന രീതിയും ഷെല്‍ ഉപയോഗിക്കുന്ന രീതിയും. ഇനി ഇതു രണ്ടും ചേര്‍ന്ന, പ്രോഗ്രാം എഴുതാനും പ്രവര്‍ത്തിപ്പിച്ചുനോക്കാനും വളരെ എളുപ്പമുള്ള, പ്രോഗ്രാമിന്റെ സമഗ്ര വികസനത്തിന് സഹായകമായ ഒരു സോഫ്ട് വെയറിനെ പരിചയപ്പെടാം. IDLE എന്നുപേരുള്ള ഈ സോഫ്ട് വെയര്‍ തുടക്കക്കാര്‍ക്ക് പൈത്തണ്‍ പഠിക്കാന്‍ വിശേഷിച്ചും നല്ലതാണെന്ന് പൈത്തണ്‍ ഭാഷയുടെ ഔദ്യോഗിക വെബ്സൈറ്റായ python.org ശുപാര്‍ശ ചെയ്യുന്നു. IDLE വിന്‍ഡോസിലും ലിനക്സിലും ലഭ്യമാണ്. ഫയല്‍/ടെര്‍മിനല്‍ രീതിയും പൈത്തണ്‍ ഷെല്ലും കണ്ടുകഴിഞ്ഞ ഒരാള്‍ക്ക് മറ്റൊരാളുടെ സഹായമൊന്നുമില്ലാതെതന്നെ IDLE അനായാസം ഉപയോഗിച്ചുതുടങ്ങാം. എന്നിരുന്നാലും IDLE ഉപയോഗിച്ച് പൈത്തണ്‍ പ്രോഗ്രാമുകള്‍ എഴുതുന്ന രീതി നമുക്ക് വിശദമായിത്തന്നെ പഠിക്കാം. ഏതു പൈത്തണ്‍ പ്രോഗ്രാമും ഫയല്‍/ടെര്‍മിനല്‍ രീതിയില്‍ എഴുതി പ്രവര്‍ത്തിപ്പിക്കാമെങ്കിലും, മുമ്പോട്ടുള്ള പഠനത്തില്‍ പ്രോഗ്രാമുകള്‍ ചെയ്തുനോക്കാന്‍ IDLE ഉപയോഗിക്കുന്നതാവും ഏറ്റവും എളുപ്പം. IDLE ഉപയോഗിക്കാന്‍ പഠിക്കുക എന്നത് വളരെ എളുപ്പമാണുതാനും. പ്രോഗ്രാമുകള്‍ എഴുതാനുള്ള സര്‍വവിധ സഹായങ്ങളും ഒരുമിച്ച് നല്‍കുന്ന സോഫ്ട് വെയറുകള്‍ Integrated Development Environment (IDE) എന്ന പേരിലാണ് അറിയപ്പെടുന്നത്. "സമഗ്ര വികസന സാഹചര്യം" എന്നോ മറ്റോ ഇതിനെ പരിഭാഷപ്പെടുത്താം. IDLE (Integrated DeveLopment Environment എന്നതിന്റെ വിചിത്രമായ ചുരുക്കെഴുത്ത്) എന്നത് പൈത്തണ്‍ പ്രോഗ്രാമുകള്‍ക്കുള്ള ഒരു IDE ആണ്.

IDLE ഇന്‍സ്റ്റാള്‍ ചെയ്യുന്ന വിധം

വിന്‍ഡോസില്‍

വിന്‍ഡോസില്‍ പൈത്തണ്‍ ഇന്സ്റ്റാള്‍ ചെയ്യുമ്പോള്‍ കൂടെ IDLE-ഉം തനിയെ ഇന്‍സ്റ്റാള്‍ ആവും (വിന്‍ഡോസ് ഇന്‍സ്റ്റാളര്‍ ഇവിടെയുണ്ട്. അവിടെ സൂചിപ്പിക്കുന്നതുപോലെ 2.6.5-ആം പതിപ്പ് എടുക്കുന്നതാവും നല്ലത്.).

ലിനക്സില്‍

  • സ്കൂള്‍ ലിനക്സില്‍:
    • 3.0/3.2 എന്നീ പതിപ്പുകള്‍ക്ക് ഈ ഫയല്‍ ഡൗണ്‍ലോഡ് ചെയ്യുക.
    • 3.8 പതിപ്പിന് ഈ ഫയല്‍ ഡൗണ്‍ലോഡ് ചെയ്യുക.
    1. ഡൗണ്‍ലോഡ് ചെയ്ത ഫയല്‍ GDebi (3.8-ല്‍ Gdeb) ഉപയോഗിച്ച് തുറക്കുക. ഇതിനായി ഫയലില്‍ റൈറ്റ്-ക്ളിക്ക് ചെയ്ത് "Open with GDebi package installer" (3.8-ല്‍ "Open with GDeb package installer")എന്നത് തെരഞ്ഞെടുക്കുക.
    2. GDebi തുറന്ന് കുറച്ചുകഴിഞ്ഞ് "Install package" എന്ന ബട്ടണ്‍ തെളിഞ്ഞുവരുമ്പോള്‍ അതമര്‍ത്തുക, തുടര്‍ന്നുള്ള നിര്‍ദ്ദേശങ്ങള്‍ അനുസരിക്കുക. ("Install" എന്നതിനുപകരം "Reinstall" എന്നാണ് കാണുന്നതെങ്കില്‍ അതിനര്‍ത്ഥം IDLE നേരത്തേതന്നെ ഇന്‍സ്റ്റാള്‍ ചെയ്തിട്ടുണ്ട് എന്നാണ്; അങ്ങനെയാണെങ്കില്‍ വീണ്ടും ഇന്‍സ്റ്റാള്‍ ചെയ്യേണ്ട കാര്യമില്ല, GDebi അടയ്കാം.)
  • ഉബുണ്ടുവില്‍ (ഇന്റര്‍നെറ്റ് കണക്ഷന്‍ ഉണ്ടായിരിക്കണം): ടെര്‍മിനല്‍ തുറന്ന് sudo apt-get install idle എന്ന കമാന്റ് കൊടുക്കുക. തുടര്‍ന്നുള്ള നിര്‍ദ്ദേശങ്ങള്‍ അനുസരിക്കുക. "[Y/n]?" എന്ന് (Yes/No?) ചോദിക്കുന്നിടത്ത് "Y" എന്ന് ഉത്തരം കൊടുത്ത് Enter അമര്‍ത്തുക. (ചില സിസ്റ്റങ്ങളില്‍ കമാന്റില്‍ അവസാനം കണ്ട idle എന്നതിനുപകരം idle-python2.6 എന്ന് കൊടുക്കേണ്ടി വന്നേക്കാം.)

IDLE ‍ഉപയോഗിക്കുന്നതെങ്ങനെ?‍

ഇന്‍സ്റ്റാള്‍ ചെയ്തുകഴിഞ്ഞ് IDLE തുറക്കാന്‍ ചെയ്യേണ്ടത്:
  • വിന്‍ഡോസില്‍: All Programs -> Python 2.6 -> Python IDLE
  • ലിനക്സില്‍: Applications -> Programming -> IDLE
IDLE തുറക്കുമ്പോള്‍ ആദ്യം കാണുക ഒരു പൈത്തണ്‍ ഷെല്‍ ആണ്:
മുമ്പുപറഞ്ഞതുപോലെ ഈ ഷെല്‍ നമുക്ക് പ്രോഗ്രാം ശകലങ്ങള്‍ പരീക്ഷിക്കാനായി ഉപയോഗിക്കാം. IDLE-ല്‍ ഈ ഷെല്ലിനു പുറമേ ഒരു പൈത്തണ്‍ എഡിറ്റര്‍ കൂടിയുണ്ട്. നാം മുമ്പെഴുതി സൂക്ഷിച്ച calc.py എന്ന പ്രോഗ്രാം ഈ എഡിറ്ററിലൊന്ന് തുറന്നുനോക്കാം. ഇതിനായി ചെയ്യേണ്ടത്:
  1. IDLE-ല്‍ File-> Open എന്നത് തെരഞ്ഞെടുക്കുക. (ഇതിനുള്ള എളുപ്പവഴി: Ctrl-O. അതായത് Control, O എന്നീ കീകള്‌ ഒരുമിച്ചമര്‍ത്തുക)
  2. calc.py എന്ന ഫയല്‍ സൂക്ഷിച്ചുവെച്ച MyPrograms എന്ന ഡയറക്ടറിയില്‍ച്ചെന്ന് ആ ഫയല്‍ തെരഞ്ഞെടുത്ത് Open അമര്‍‌ത്തുക . ഈ ഫയല്‍ ഒരു എഡിറ്ററില്‍ തുറന്നുവരുന്നതുകാണാം.
മറ്റ് ഏത് എഡിറ്ററിലുമെന്നതുപോലെ (ഉദാ: gedit) ഈ എഡിറ്ററുപയോഗിച്ചും നമുക്ക് പ്രോഗ്രാമില്‍ മാറ്റങ്ങള്‍ വരുത്തുകയും വരുത്തിയ മാറ്റങ്ങള്‍ ഫയലിലേക്ക് സേവ് ചെയ്തുവെക്കുകയും ചെയ്യാം. സേവ് ചെയ്യാനായി എഡിറ്ററില്‍ File -> Save അല്ലെങ്കില്‍ Ctrl-S ഉപയോഗിക്കുക. gedit പോലെയുള്ള, പൊതുവായ ഉപയോഗത്തിനുള്ള എഡിറ്ററുകളില്‍ (എഡിറ്റര്‍മാരില്‍?) കാണുന്ന സൗകര്യങ്ങള്‍ കൂടാതെ ഈ എഡിറ്ററില്‍ പൈത്തണ്‍ പ്രോഗ്രാമുകള്‍ എഴുതി പ്രവര്‍ത്തിപ്പിക്കാന്‍ പ്രത്യേകം സഹായിക്കുന്ന ഒട്ടനവധി സൗകര്യങ്ങളുണ്ട്. ഇവയില്‍ മിക്കതിനേയും‌ നമുക്ക് വഴിയേ പരിചയപ്പെടാം. ഇക്കൂട്ടത്തില്‌ ഏറ്റവും പ്രധാനപ്പെട്ട, ഏറ്റവും ഉപകാരപ്രദമായ ഒന്നാണ് ടെര്‍മിനല്‍ ഉപയോഗിക്കാതെ, എഡിറ്ററിനുള്ളില്‍ നിന്നുകൊണ്ടുതന്നെ പ്രോഗ്രാം പ്രവര്‍ത്തിപ്പിച്ചുനോക്കാനുള്ള സംവിധാനം. ഇതിനായി പ്രോഗ്രാം തുറന്നുവെച്ച എഡിറ്ററില്‍ച്ചെന്ന് Run -> Run Module എന്നത് തെരഞ്ഞെടുക്കുക (എളുപ്പവഴി: കീബോര്‍ഡില്‍ F5 എന്നടയാളപ്പെടുത്തിയ കീ അമര്‍‌ത്തുക.). പ്രോഗ്രാമിന്റെ ഔട്പുട്ട് ആദ്യം തുറന്നുവന്ന ഷെല്ലില്‍ വരുന്നതുകാണാം.
IDLE ഉപയോഗിക്കേണ്ടതെങ്ങനെ എന്ന് നാം പഠിച്ചുകഴിഞ്ഞു! IDLE-ല്‍ മറ്റു പല സൗകര്യങ്ങളുമുണ്ട് (ഉദാ: പ്രോഗ്രാമിന്റെ കുറേ ഭാഗം ഒറ്റയടിക്ക് കമന്റ് ചെയ്യാനുള്ള സൗകര്യം). ഇവയില്‍ ചിലതിനെയൊക്കെ പാഠങ്ങളുടെ ഭാഗമായി പിന്നീട് പരിചയപ്പെടാം. കൗതുകം തോന്നുമ്പോള്‍ തനിയെ പരീക്ഷണങ്ങള്‍ ചെയ്ത് പഠിക്കുന്നതാണ് ഏറ്റവും നല്ലത്; സംശയങ്ങളുണ്ടാകുമ്പോള്‍ (പോസ്റ്റിന്റെ) കമന്റായി ചോദിച്ചോളൂ.

ഒരു ശരാശരി പ്രോഗ്രാം

ഹൈസ്കൂള്‍ കുട്ടികള്‍ക്കായി ഒരു ക്യാമ്പ് നടത്തുന്നു എന്നു കരുതുക. ജില്ലയിലെ പല സ്കൂളുകളില്‍നിന്നുള്ള കുട്ടികള്‍ ക്യാമ്പില്‍ പങ്കെടുക്കുന്നു. ക്യാമ്പില്‍ വന്നിട്ടുള്ള കുട്ടികളുടെ ശരാശരി പ്രായം കണ്ടുപിടിക്കാനുള്ള ലളിതമായ ഒരു പ്രോഗ്രാം നമുക്കെഴുതാം. പ്രോഗ്രാമിലേക്ക് ഇന്‍പുട്ട് കൊടുക്കുന്നവിധം, ചരങ്ങളുടെ (variables) പ്രോഗ്രാമിലെ ഉപയോഗം എന്നിവ ഇതിലൂടെ നമുക്ക് പഠിക്കാം. ഈ പ്രോഗ്രാമിലേക്ക് ഇന്‍പുട്ട് ആയി കൊടുക്കേണ്ടത് ഓരോ പ്രായത്തിലുമുള്ള എത്ര കുട്ടികള്‍ വീതം ക്യാമ്പില്‍ വന്നിട്ടുണ്ട് എന്നതാണ്. ഹൈസ്കൂള്‍ കുട്ടികളായതിനാല്‍ പ്രായം പന്ത്രണ്ടിനും പതിനാറിനുമിടയ്ക്കായിരിക്കും എന്ന് (മിക്കവാറും എല്ലാവരും എങ്ങനെയെങ്കിലുമൊക്കെ പാസായിപ്പോകുന്ന ഇക്കാലത്തെങ്കിലും) ന്യായമായും കരുതാം. പ്രോഗ്രാം താഴെ കൊടുക്കുന്നു. (കഴിയുമെങ്കില്‍ IDLE ഉപയോഗിച്ച്) പ്രവര്‍ത്തിപ്പിച്ചുനോക്കുക. സംശയങ്ങളും പ്രശ്നങ്ങളും കമന്റിലൂടെ അറിയിക്കുക. നിങ്ങള്‍ ചോദിക്കുന്ന സംശയങ്ങള്‍ക്കുള്ള മറുപടികള്‍ കൂടി ഉള്‍‍പ്പെടുത്തി പ്രോഗ്രാമിനെപ്പറ്റിയുള്ള വിശദീകരണം അടുത്ത പാഠത്തില്‍.
# This program calculates the average age of  a group of students
# whose ages range from twelve to sixteen. The program takes as
# input the numbers of students of each age and outputs the
# average.
# 
# The goal of this program is to show how to read input into the
# program, and to introduce the use of variables.


num_12 = input("How many 12 year old students in the group? ")

num_13 = input("How many 13 year old students in the group? ")

num_14 = input("How many 14 year old students in the group? ")

num_15 = input("How many 15 year old students in the group? ")

num_16 = input("How many 16 year old students in the group? ")

total_num = num_12 + num_13 + num_14 + num_15 + num_16

total_age = (12.0 * num_12) + (13 * num_13) + (14 * num_14) + \
    (15 * num_15) + (16 * num_16)

average = total_age/total_num

print "The average age of all the students is ", average
കളറില്‍... IDLE ഉപയോഗിച്ച് ഈ പ്രോഗ്രാം പ്രവര്‍ത്തിപ്പിക്കാന്‍ നാം ചെയ്യേണ്ടത്:
  1. IDLE തുറക്കുക (നേരത്തേതന്നെ തുറന്നുവച്ചിട്ടുണ്ടെങ്കില്‍ അത് ഉപയോഗിച്ചാല്‍ മതി; പുതുതായി തുറക്കേണ്ട കാര്യമില്ല.).
  2. പുതിയ ഒരു (ഒഴിഞ്ഞ) ഫയല്‍ IDLE-ല്‍ തുറക്കുക. ഇതിനായി File -> New Window അല്ലെങ്കില്‍ Ctrl-N എന്ന കുറുക്കുവഴി ഉപയോഗിക്കുക.
  3. പുതിയ ഫയല്‍ ഒരു എഡിറ്ററിലായാണ് തുറന്നുവരുന്നത്; ഇവിടെ നമുക്ക് ഇഷ്ടമുള്ളതൊക്കെ എഴുതാനുള്ള സൗകര്യമുണ്ട്. ഈ ഫയലിലേക്ക് നമ്മുടെ പ്രോഗ്രാം എഴുതുക അല്ലെങ്കില്‍ പകര്‍ത്തിവെക്കുക.
  4. എഴുതിയ പ്രോഗ്രാമിനെ File -> Save അല്ലെങ്കില്‍ Ctrl-S ഉപയോഗിച്ച് (ഒന്നാം പാഠത്തില്‍ gedit ഉപയോഗിച്ച് സേവ് ചെയ്തപ്പോഴുള്ള നിബന്ധനകള്‍ പാലിച്ചുകൊണ്ട് )സേവ് ചെയ്യുക.
  5. ഇപ്പോള്‍ നമ്മുടെ എഡിറ്ററുടെ തലക്കെട്ട് "Untitled" എന്നതുമാറി സേവ് ചെയ്ത ഡയറക്ടറിയുടെ പേരുള്‍പ്പടെയുള്ള ഫയലിന്റെ പേരായി മാറിയിരിക്കും. ഇനി ഈ എഡിറ്ററില്‍ നിന്നുകൊണ്ട് (ഇതില്‍ സംശയമുണ്ടെങ്കില്‍ എഡിറ്റര്‍ വിന്‍ഡോയില്‍ എവിടെയെങ്കിലും മൌസ് ഒന്നു ക്ളിക്ക് ചെയ്താല്‍ മതി) F5 അമര്‍ത്തുക.
IDLE-ല്‍ പ്രോഗ്രാം പ്രവര്‍ത്തിപ്പിക്കാന്‍ എഡിറ്ററില്‍ F5 എന്ന കീ അമര്‍ത്തിയാല്‍ മതിയല്ലോ? F5 അമര്‍ത്തുമ്പോള്‍ (മറ്റൊരു വിന്‍ഡോയിലുള്ള) Python shell-ല്‍ ആണ് പ്രോഗ്രാം പ്രവര്‍ത്തിക്കുന്നത്. പ്രോഗ്രാമിന് ഇന്‍പുട്ട് കൊടുക്കേണ്ടത് അവിടെയാണ്; ഔട്ട്പുട്ട് കാണുന്നതും അവിടെത്തന്നെ. എഡിറ്ററില്‍ F5 അമര്‍ത്തിയിട്ടും ഒന്നും സംഭവിക്കുന്നില്ല എന്നു തോന്നുന്നുണ്ടെങ്കില്‍ Python shell ഉള്ള രണ്ടാമത്തെ വിന്‍ഡോയില്‍ നോക്കുക!

നന്ദി: ഹസൈനാര്‍ മങ്കട, അഞ്ജന.

53 comments:

MURALEEDHARAN.C.R June 28, 2010 at 5:54 AM  

അത്യുഗ്രന്‍ ക്ലാസ്
ഇനിയും ജൈത്രയാത്ര തുടരട്ടേ
അഭിനന്ദനങ്ങള്‍

ഹോംസ് June 28, 2010 at 7:32 AM  

ഉബുണ്ടുവില്‍ IDLE ഇതാ ഇന്‍സ്റ്റാള്‍ ചെയ്തു കഴിഞ്ഞു.
ബാക്കി പരീക്ഷണങ്ങള്‍ വൈകുന്നേരം ആപ്പീസ് വിട്ടു വന്നിട്ട്.
ഫിലിപ്പിന് നന്ദി!

KIRANAM June 28, 2010 at 7:35 AM  

വളരെ ഗംഭീര മായിരിക്കുന്നു.while loop നെ കുറിച്ചറിയാന്‍ ഇവിടെ സന്ദര്‍ശിക്കുക

ഹോംസ് June 28, 2010 at 5:21 PM  

ഫിലിപ്പേ,
പറഞ്ഞതുപോലെ മാതൃകാ പ്രോഗ്രാം IDLE യിലേക്ക് പേസ്റ്റ് ചെയ്ത് F5 ഞെക്കിയപ്പോള്‍ ആദ്യം സേവ് ചെയ്യാന്‍ പറഞ്ഞു.അതു ചെയ്ത കഴിഞ്ഞപ്പോള്‍ ഇങ്ങനെ യാണ് കണ്ടത്. എന്തായിരിക്കാം പ്രശ്നം?
തുടക്കക്കാരനാണേ..,സംശയം നിസ്സാരമാണെങ്കില്‍ ചിരിച്ചുതള്ളല്ലേ..!

ഗീതാസുധി June 28, 2010 at 5:27 PM  

അല്ലേ..! ഇപ്പോള്‍ ഗൗരവമായി പൈത്തണ്‍ പഠിക്കുന്നത് ഹോംസ് മാത്രമാണോ..?
അതോ ബാക്കിയുള്ളവര്‍ക്കൊന്നും യാതൊരു സംശയവുമില്ലേ?
ഞാന്‍ ഒരു പാഠം പുറകിലാണ്. ഇതുവരെ കുഴപ്പങ്ങളൊന്നും കണ്ടില്ല.
നന്ദി ഫിലിപ്പ് സാര്‍.

പ്രകാശ്‌ June 28, 2010 at 6:23 PM  

gഅധ്യാപകരെ കുറ്റം പറയല്‍ ഒരു സ്ഥിരം ഏര്‍പ്പാടാക്കിയ ഹോംസിനു, ദൈവത്തിന്റെ മധുരതരമായ പ്രതികാരം ആണിതെന്നു കൂട്ടിയാല്‍ മതി ഗീത ടീച്ചറെ.എല്ലാം കണ്ടും കേട്ടും ഒരാള്‍ മുകളിലുന്ടെന്നുള്ള വിചാരം എല്ലാവര്ക്കും എപ്പോഴും ഉള്ളത് നല്ലതാണ്

Unknown June 28, 2010 at 6:27 PM  

ഈ മാസത്തെ നെറ്റ് യൂസേജ് ലിമിറ്റ് നേരത്തേ കഴിഞ്ഞതിനാല്‍ അധികസമയം നെറ്റില്‍ ചെലവിടാറില്ല. എവിടെ പി.ഡി.എഫ് കോപ്പി? എല്ലാ പാഠത്തിനുമൊപ്പം അങ്ങനെയൊന്ന് തരാമെന്ന് ഫിലിപ്പ് സാര്‍ ഏറ്റതാണല്ലോ.

ജനാര്‍ദ്ദനന്‍.സി.എം June 28, 2010 at 7:46 PM  

ubuntu 9.10 വേര്‍ഷനും idle download file പാഠത്തില്‍ തന്നതു തന്നെ മതിയോ?
പാടം പഠിച്ചിട്ട് അഭിപ്രായം പറയാം

സഹൃദയന്‍ June 28, 2010 at 7:47 PM  

Making of pdf copies are easy...
This is an example of simple small size pdf of python lesson 2..easy to download..
(I am not sure whether the links are working...)

ഫിലിപ്പ് June 28, 2010 at 8:05 PM  

ഹോംസ് സാര്‍,

ഒരു സംശയവും നിസ്സാരമല്ല. സാറിന്റെ ഈ സംശയത്തിന്റെ ഉത്തരം മാത്രമായി പറയുന്നതിനുപകരം, ഈ ഉത്തരം എനിക്കെങ്ങനെ കിട്ടി എന്നുകൂടി സൂചിപ്പിക്കാം.

ഇവിടെ IDLE പറയുന്നത് എന്താണെന്നു നോക്കാം. IDLE-ന്റെ സന്ദേശം പറയുന്നത് പ്രോഗ്രാമില്‍ ഒരു വ്യാകരണത്തെറ്റ് ഉണ്ടെന്നാണ്: വ്യാകരണം ശരിയല്ലത്രെ. പ്രോഗ്രാമില്‍ താന്‍കണ്ട ആദ്യത്തെ തെറ്റ് എവിടെയാണെന്നും IDLE ചൂണ്ടിക്കാണിക്കുന്നുണ്ട്: ഏറ്റവും ആദ്യത്തെ വരിയിലുള്ള "Python 2.6.4 ... " എന്നതിലെ 6-നെ ചുവന്ന പശ്ചാത്തലത്തില്‍ കാണിച്ചിരിക്കുന്നതു നോക്കുക. ഈ 6 ആണ് പ്രോഗ്രാമില്‍ IDLE കണ്ട ആദ്യത്തെ വ്യാകരണത്തെറ്റ്.

പക്ഷേ നമ്മുടെ പ്രോഗ്രാം തുടങ്ങുന്നത് "# This program calculates ..." എന്നുള്ള വരിയിലല്ലേ? അപ്പോള്‍പ്പിന്നെ "Python 2.6.4 ... " എന്ന, നമ്മുടെ പ്രോഗ്രാമില്‍പ്പെടാത്ത വരിയില്‍ തെറ്റുണ്ടെന്നു പറയുന്നതിന്റെ കാര്യമെന്താണ്? ഈ വരിയും പ്രോഗ്രാമില്‍പ്പെടുന്നു എന്ന് IDLE-ന് എങ്ങനെയോ തോന്നിപ്പോയി. ഇതിനെന്താവാം കാരണം?

ഇതിനുകാരണം IDLE ഉപയോഗിച്ച് ശരാശരി പ്രോഗ്രാം എങ്ങനെ പ്രവര്‍ത്തിപ്പിക്കാമെന്ന് പാഠത്തില്‍ ശരിയായി പറഞ്ഞില്ല എന്നതാണ്. ഹോംസ് സാര്‍ ഇതു കണ്ടുപിടിച്ച സ്ഥിതിക്ക് പാഠം ഇതുകൂടി ചേര്‍ത്ത് കുറച്ചുകഴിഞ്ഞ് ശരിയാക്കാം. തത്കാലം ഇവിടെ കമന്റിലായി പറയുന്നു.

IDLE ഉപയോഗിച്ച് ഈ പ്രോഗ്രാം പ്രവര്‍ത്തിപ്പിക്കാന്‍ നാം ചെയ്യേണ്ടത്:

1. IDLE തുറക്കുക (നേരത്തേതന്നെ തുറന്നുവച്ചിട്ടുണ്ടെങ്കില്‍ അത് ഉപയോഗിച്ചാല്‍ മതി; പുതുതായി തുറക്കേണ്ട കാര്യമില്ല.).

2. പുതിയ ഒരു കാലി ഫയല്‍ IDLE-ല്‍ തുറക്കുക. ഇതിനായി File -> New Window അല്ലെങ്കില്‍ Ctrl-N എന്ന കുറുക്കുവഴി ഉപയോഗിക്കുക.

3. ഈ കാലി ഫയല്‍ ഒരു എഡിറ്ററിലായാണ് തുറന്നുവരുന്നത്. അതായത്, ഇവിടെ നമുക്ക് ഇഷ്ടമുള്ളതൊക്കെ ചറപറാ എഴുതാനുള്ള സൗകര്യമുണ്ട്. ഈ ഫയലിലേക്ക് നമ്മുടെ പ്രോഗ്രാം എഴുതുക അല്ലെങ്കില്‍ പകര്‍ത്തിവെക്കുക.

4. എഴുതിയ പ്രോഗ്രാമിനെ File -> Save അല്ലെങ്കില്‍ Ctrl-S ഉപയോഗിച്ച് (ഒന്നാം പാഠത്തില്‍ gedit ഉപയോഗിച്ച് സേവ് ചെയ്തപ്പോഴുള്ള നിബന്ധനകള്‍ പാലിച്ചുകൊണ്ട് )സേവ് ചെയ്യുക.

5. ഇപ്പോള്‍ നമ്മുടെ എഡിറ്ററുടെ തലക്കെട്ട് "Untitled" എന്നതുമാറി സേവ് ചെയ്ത ഡയറക്ടറിയുടെ പേരുള്‍പ്പടെയുള്ള ഫയലിന്റെ പേരായി മാറിയിരിക്കും. ഇനി ഈ എഡിറ്ററില്‍ നിന്നുകൊണ്ട് (ഇതില്‍ സംശയമുണ്ടെങ്കില്‍ എഡിറ്റര്‍ വിന്‍ഡോയില്‍ എവിടെയെങ്കിലും മൌസ് ഒന്നു ക്ളിക്ക് ചെയ്താല്‍ മതി) F5 അമര്‍ത്തുക.

6. ശേഷം പാഠത്തിലേതുപോലെ.

സ്വപ്ന ടീച്ചര്‍,

പാഠത്തിന്റെ ഉള്ളടക്കം ഒന്ന് ഉറയ്ക്കട്ടെ എന്നുകരുതി പിഡിഎഫ് ഇടാതിരുന്നതാണ്. കൂടാതെ യാത്രകളിലായിരുന്നതിനാല്‍ സമയവും കിട്ടിയില്ല. ചിക്കു(മാഷ്/ടീച്ചര്‍) രണ്ടാം പാഠത്തിന്റെ പിഡിഎഫ് തയ്യാറാക്കി ലിങ്ക് തന്നിട്ടുള്ളത് കണ്ടുകാണുമല്ലോ. 2,3 പാഠങ്ങളുടെ പിഡിഎഫ് ഒന്നുരണ്ടു ദിവസത്തിനകം ഇടാം.

ജനാര്‍ദ്ദനന്‍ സാര്‍,

ഉബുണ്ടു 9.10-ന് പാഠത്തില്‍പ്പറഞ്ഞ കമാന്റ് ഉപയോഗിക്കുന്നതാവും നല്ലത്. ടെര്‍മിനല്‍ തുറന്ന് (ഇതെങ്ങനെയെന്ന് ഒന്നാം പാഠത്തിലുണ്ട്) sudo apt-get install idle എന്നെഴുതി Enter അമര്‍ത്തുക. പിന്നെ കിട്ടുന്ന നിര്‍ദ്ദേശങ്ങള്‍ അനുസരിക്കുക. IDLE ഇന്‍സ്റ്റാള്‍ ചെയ്യാന്‍ വേണ്ടതൊക്കെ ആവാഹിച്ചുവരുത്തി ഇന്‍സ്റ്റാള്‍ ചെയ്യുന്ന അതിമനോഹരമായ കാഴ്ച പിന്നീട് കാണാം.

ചിക്കു(മാഷ്/ടീച്ചര്‍),

പിഡിഎഫിനു നന്ദി. ലിങ്കുകള്‍ ശരിയായി പ്രവര്‍ത്തിക്കുന്നുണ്ട്.

-- ഫിലിപ്പ്

ഡ്രോയിങ്ങ് മാഷ് June 28, 2010 at 9:21 PM  

Windowsല്‍ Python പ്രവര്‍ത്തിക്കുമോ? Post ല്‍ പറഞ്ഞത് Linux ന് മാത്രമാണോ? Schoolലാണ് Linux ഉള്ളത്. എന്റെ PC യില്‍ Windows Vista™ യാണ് ഉള്ളത്.

ഹോംസ് June 28, 2010 at 9:43 PM  

സക്സസ്സ്..!
"അധ്യാപകരെ കുറ്റം പറയല്‍ ഒരു സ്ഥിരം ഏര്‍പ്പാടാക്കിയ ഹോംസിനു, ദൈവത്തിന്റെ മധുരതരമായ പ്രതികാരം ആണിതെന്നു..."
ഇതൊരു പ്രതികാരമാണെങ്കില്‍, അതിനു മധുരപ്രതികാരമെന്നല്ലേ പറയേണ്ടൂ..
എന്തായാലും ഒരു നാള്‍ ഞാനും ഫിലിപ്പിനെപ്പോലെ വളരും വലുതാകും!

ഫിലിപ്പ് June 28, 2010 at 10:10 PM  

ഡ്രോയിംഗ് മാഷ്,

പൈത്തണ്‍ വിന്‍ഡോസിലും പ്രവര്‍ത്തിക്കും. ഒന്നാം പാഠത്തിന്റെ കമന്റുകളും ഈ പാഠത്തില്‍ IDLE തുറക്കുന്നതിനെപ്പറ്റി പറഞ്ഞതും നോക്കുക.

ഹോംസ് സാര്‍,

അഭിനന്ദനങ്ങള്‍!

പ്രോഗ്രാമില്‍ ചെറിയ മാറ്റങ്ങള്‍ വരുത്തി നോക്കാമോ? IDLE-നുള്ളിലുള്ള എഡിറ്ററുപയോഗിച്ചുതന്നെ പ്രോഗ്രാം തിരുത്താം. മാറ്റങ്ങള്‍ വരുത്തിയതിനുശേഷം F5 അമര്‍ത്തി പുതിയ പ്രോഗ്രാമിനെ പ്രവര്‍ത്തിപ്പിക്കാം (അതിനുമുമ്പ് Ctrl-S അമര്‍ത്തി പ്രോഗ്രാം സേവ് ചെയ്താല്‍ സേവ് ചെയ്യട്ടെ എന്ന് F5 എപ്പോഴും ചോദിക്കുന്ന ശല്യം ഒഴിവാക്കാം). ഉദാഹരണത്തിന്, മിഡില്‍ സ്കൂളിലെ കുട്ടികളും ക്യാമ്പില്‍ വരുന്നു എന്നു കരുതുക. അപ്പോള്‍ 9,10,11 എന്നീ പ്രായങ്ങളിലുള്ളവരും അക്കൂട്ടത്തില്‍ കാണും. ഇങ്ങനെയുള്ള ഒരു സംഘത്തിന്റെ ശരാശരി പ്രായം കാണുന്ന രീതിയില്‍ പ്രോഗ്രാം മാറ്റിനോക്കാമോ?

-- ഫിലിപ്പ്

സഹൃദയന്‍ June 28, 2010 at 10:30 PM  

Dear Mr. Philip

Thanks 4 ur consideration...
That was a small pdf copy of abt 88 kb..
for that teacher..
Her free limit is closing and she wants to study that...
so I did so...
Now I am giving the link for the pdf copy of python Lesson 3
I doubt whether it will affect your class...
Plz check this and say whether it is O.K for u.....
And if you don't like this you can use the admn privillage..

സഹൃദയന്‍ June 28, 2010 at 10:37 PM  

This is the link 4 the standard copy of Python Lesson 2

Edavanakadan June 28, 2010 at 11:54 PM  

പ്രിയ ഫിലിപ്പ്
സ്വന്തമായി ഒരു പേരും അഡ്രസ്സുമില്ലാത്ത ഹോംസ്സിനെ പോലും താങ്കളുടെ പെരുമ്പാമ്പ് (python) വിഴുങ്ങുന്നതു കാണുമ്പോള്‍ സന്തോഷം തോന്നുന്നു.
ഒന്നുമറിയാത്ത ഹോംസിനുപോലും ദഹിക്കുന്നരീതിയില്‍ പോസ്റ്റുകള്‍ തയ്യാറാക്കിയ താങ്കള്‍ക്ക് അഭിനന്ദനങ്ങള്‍
ഹോംസിനും അഭിനന്ദനങ്ങള്‍.
ജയദേവന്‍
എം. ടി. എറണാകുളം

bhama June 29, 2010 at 6:06 AM  

ഇന്നലെ അല്പം തിരക്കിലായിരുന്നു. പൈതണ്‍പാഠം നോക്കാന്‍ സമയം കിട്ടിയില്ല.

ഇന്നു വേണം ചെയ്തു നോക്കാന്‍

ഫിലിപ്പ് June 29, 2010 at 6:37 AM  

ചിക്കു,

ചിക്കു തന്ന ലിങ്കുകള്‍ ഒട്ടേറെപ്പേര്‍ക്ക് --- പ്രത്യേകിച്ച് സ്വപ്ന ടീച്ചറെപ്പോലെ നെറ്റ് ഉപയോഗം കഴിയുന്നത്ര കുറയ്ക്കാന്‍ ശ്രമിക്കുന്നവര്‍ക്ക് --- വളരെ ഉപകാരപ്പെടും.

എല്ലാവരോടും,

കഴിയുമെങ്കില്‍ Don't be a troll, don't feed the trolls. (മലയാളം വിക്കിപ്പീഡിയയില്‍ ഇപ്പോഴില്ലാത്തതും നിശ്ചയമായും ഉണ്ടാവേണ്ടതുമായ പേജുകളില്‍ മുന്‍പന്തിയില്‍ വരുമെന്നു തോന്നുന്നു, ഈ പേജ്!)

-- ഫിലിപ്പ്

mkmali June 29, 2010 at 6:58 AM  

Pdf തയ്യാറക്കാന്‍
വെബ് പേജില്‍ നിന്നും ആവശ്യമായ ഭാഗങ്ങള്‍ സെലക്റ്റ്, കോപ്പി ചെയ്ത് റൈറ്ററില്‍ പേയ്സ്റ്റ് ചെയ്യുക. അതിന് ശേഷം ഫയല്‍ മെനുവില്‍ നിന്നും Export as PDF-Export എന്ന് കൊടുത്താല്‍ പി.ഡി.എഫ്. റെഡി.

Unknown June 29, 2010 at 7:54 AM  

ഫിലിപ്പ് മാഷിന്‍റെ കമന്‍റ് വായിച്ചു. അല്പം വിഷമം തോന്നി. വീണ്ടും ഒരു ട്രോള്‍ പോസ്റ്റു ചെയ്തോട്ടെ. സീരിയസ്സായി പഠിക്കാന്‍ വേണ്ടി മാത്രം ഈ പേജില്‍ വരുന്ന ഒരു കമ്യൂണിറ്റിക്കു മുന്നില്‍ ഓഫ് ടോപിക് പറയുന്നത് ശരിയല്ലല്ലോ. എങ്കിലും,
എല്ലാവരോടും കൂടി ഒന്നു പറയട്ടെ. വീട്ടിലുള്ള എല്ലാവരുടേയും സൌകര്യങ്ങള്‍ നോക്കി അവരുടെയെല്ലാം അനുവാദത്തോടെ വേണ്ടി വരും പലപ്പോഴും ഇങ്ങോട്ടെല്ലാം വരാന്‍. നെറ്റ് യൂസേജും ലിമിറ്റുമെല്ലാം പലര്‍ക്കും ഒരു ഘടകമാകാം. മലയാളത്തില്‍ മലയാളികള്‍ക്കിടയില്‍ ഒരു പഠനം നടത്തിയാല്‍ മാസാവസാനം നെറ്റ് ഉപയോഗം കുറവാണ് എന്നു തന്നെയായിരിക്കും കണ്ടെത്താനാവുക. പി.ഡി.എഫ് ചോദിച്ചത് ഒരു തെറ്റായിപ്പോയിയെന്ന് ഇപ്പോഴും എനിക്ക് തോന്നുന്നില്ല.

എങ്കിലും ഇത് പരിപൂര്‍ണമായും ഒരു ട്രോള്‍ ആയതിനാല്‍ മാത്‍സ് ബ്ലോഗ് ഇതു ഡിലീറ്റ് ചെയ്തു കളയണം.

ഫിലിപ്പ് June 29, 2010 at 8:49 AM  

സ്വപ്ന ടീച്ചര്‍,

വിഷമിക്കേണ്ട കാര്യമൊന്നുമില്ല. ട്രോളിന്റെ നിര്‍വചനം നോക്കൂ. വൈകാരിക പ്രതികരണങ്ങള്‍ ഉണ്ടാക്കുക എന്ന പ്രധാന ലക്ഷ്യത്തോടെ മറ്റുള്ളവരെ പ്രകോപിപ്പിക്കുന്നതരം വിഷയേതര സന്ദേശങ്ങള്‍ ചര്‍ച്ചക്കിടയില്‍ തിരുകുന്നവരല്ലേ ട്രോളുകള്‍? ഈ ബ്ളോഗിന്റെ പ്രധാന വിഷയമെന്താണ്? പൈത്തണ്‍ പഠിക്കലല്ലേ? ടീച്ചറുടെ ഏത് കമന്റാണ് ഇതനുസരിച്ച് ട്രോള്‍ ആവുക? ഞാന്‍ നോക്കിയിട്ട് ഒന്നും കാണുന്നില്ല. മറിച്ച്, ടീച്ചര്‍ പറഞ്ഞതുപോലെ ഈ ബ്ളോഗിന്റെ നല്ലൊരുഭാഗം വായനക്കാരെ ബാധിക്കുന്ന ഒരു പ്രശ്നം (മാസാവസാനം ഇന്റര്‍നെറ്റ് ഉപയോഗം അത്ര സുലഭമല്ലാതാകുക എന്നത്) അവതരിപ്പിക്കുകയല്ലേ ടീച്ചര്‍ ചെയ്തത്? അതിനുള്ള ഒരു പ്രതിവിധി ചിക്കു തരികയും ചെയ്തു. പിഡിഎഫ് ചോദിച്ചത് തെറ്റാണെന്ന് എനിക്കും ഇതുവരെ തോന്നിയിട്ടില്ല!

വളരെ സീരിയസ്സായി കടിച്ചുപിടിച്ച് ചെയ്യേണ്ട ഒരു കാര്യമാണ് പൈത്തണ്‍ പഠനം എന്ന അഭിപ്രായം എനിക്കില്ല. പൈത്തണ്‍ പഠനമല്ലാതെ മറ്റൊരു വിഷയവും ഇവിടെ ചര്‍ച്ചയ്ക്ക് വരരുത് എന്ന തോന്നലുമില്ല. സാധാരണ (ഭൂലോകത്തു നടക്കുന്ന) ചര്‍ച്ചകളെപ്പോലെ മറ്റു ജോലികളൊക്കെ മാറ്റിവച്ച് നമ്മളെല്ലാവരും കൂടി ഒരേസമയം ഒരിടത്ത് വന്നിരുന്ന നടത്തുന്ന ഒരു പരിപാടിയല്ലല്ലോ ബ്ളോഗിലെ ചര്‍ച്ച. അതുകൊണ്ട് വിഷയേതര (off topic) കാര്യങ്ങള്‍ ചര്‍ച്ച ചെയ്താലും അത് മറ്റാരുടേയും സമയം പാഴാക്കുന്നും മറ്റുമില്ല. ഇന്റര്‍നെറ്റ് ചര്‍ച്ചകളുടെ ഒരു ഗുണമാണിത്, കുറവല്ല. അതുകൊണ്ടുതന്നെ ഇങ്ങനെയുള്ള ചര്‍ച്ചകളും ഇവിടെ വേണം. പ്രധാന മാത്സ് ബ്ളോഗില്‍ത്തന്നെ നാം എന്തെല്ലാം വെവ്വേറെ കാര്യങ്ങള്‍ ചര്‍ച്ച് ചെയ്യുന്നു, ഗണിതവും ഗണിതാധ്യാപനവുമല്ലാതെ? എന്നാല്‍ മേല്‍പ്പറഞ്ഞതുപോലെ വൈകാരിക പ്രതികരണങ്ങള്‍ ഉണ്ടാക്കുക എന്ന പ്രധാന ലക്ഷ്യത്തോടെ മറ്റുള്ളവരെ പ്രകോപിപ്പിക്കുന്നതരം വിഷയേതര സന്ദേശങ്ങള്‍ വരുന്നത് പൈത്തണ്‍ പഠനത്തെയോ നമ്മളേയോ സഹായിക്കും എന്ന് എനിക്കു തോന്നുന്നില്ല. അങ്ങനെയുള്ള ചില കമന്റുകള്‍ കണ്ടതുകൊണ്ടാണ് ഞാനങ്ങനെ പറഞ്ഞത്.

-- ഫിലിപ്പ്

Ramu June 29, 2010 at 12:19 PM  

Dear Philip,

You have been doing a great job! Keep up the good work!

-pramode

shelma June 29, 2010 at 2:15 PM  

LINUX 3.2 ല്‍ IDLE ഇന്‍സ്റ്റാള്‍ ചെയ്യുമ്പോള്‍ Broken dependencies എന്ന് കാണിക്കുന്നു.ഒരു പരിഹാരം പറഞ്ഞ് തരണം

Hassainar Mankada June 29, 2010 at 6:28 PM  

@ Shelama teacher,

Broken dependencies എന്ന് കാണുന്നത് ഏതെങ്കിലും പാക്കേജിന്റെ ഇന്‍സ്റ്റലേഷന്‍ പൂര്‍ത്തിയാവാതെ വരുന്നത് കൊണ്ടാണ്. മുമ്പ് വല്ല പാക്കേജും ഇന്‍സ്റ്റാള്‍ ചെയ്യുമ്പോള്‍ കമ്പ്യൂട്ടര്‍ ഓഫായിപ്പോയിട്ടുണ്ടാകും, അല്ലെങ്കില്‍ നിന്ന് സി.ഡി./ ഇന്റര്‍നെറ്റ് ഇവയില്‍ നിന്ന് മുഴുവന്‍ പാക്കേജും ലഭിച്ചിട്ടുണ്ടാവില്ല. ഇത് കറക്ട് ചെയ്യാന്‍ Synaptic Package Manager തുറന്ന് Edit-Fix broken packages ക്ലിക്ക് ചെയ്ത് Apply യില്‍ ക്ലിക്ക് ചെയ്താല്‍ മതി. ആ സമയത്ത് Broken package കളെ ഇന്‍സ്റ്റാള്‍/ റിമൂവ് ചെയ്യും. ചിലപ്പോള്‍ നേരത്തെ സിനാപ്റ്റിക്കില്‍ Add ചെയ്ത സി.ഡി. ആവശ്യപ്പെടും. ചിലപ്പോള്‍ സിസ്റ്റത്തിലെ പ്രധാന സോഫ്റ്റ് വെയറുകള്‍ റിമൂവ് ആവും. ഇങ്ങനെ broken packages ഫിക്സ് ചെയ്തതിന് ശേഷം (3.2 വില്‍) സിനാപ്റ്റിക്കിലെ Settings-Repositories തുറന്ന് കാണുന്ന വിന്‍ഡോയിലെ എല്ലാ ടിക്ക് മാര്‍ക്കുകളും കളഞ്ഞ് വിന്‍ഡോ ക്ലോസ് ചെയ്ത് Edit-Reload Package information ക്ലിക്ക് ചെയ്തതിന് ശേഷം IDLE ഇന്‍സ്റ്റാള്‍ ചെയ്യുക.
apt-get install -f എന്ന കമാന്റ് റൂട്ട് ടെര്‍മിനില്‍ റണ്‍ ചെയ്തും പ്രശ്നം പരിഹരിക്കാം.

സഹൃദയന്‍ June 29, 2010 at 6:29 PM  

വിന്‍ഡോസിലും പി.ഡി.ഫ് ഉണ്ടാക്കാന്‍ എളുപ്പമാണ് ...
വേഡില്‍ ചെന്നിട്ടു
ഫയല്‍ > സേവ ആസ് > പി.ഡി.ഫ് എന്ന് കൊടുത്താല്‍ മതി..

Rasiya Sam June 29, 2010 at 6:38 PM  

പൈത്തണ്‍ പാഠങ്ങള് വിശദീകരിച്ചു തന്ന ഫിലിപ്പ് സാറിനു നന്ദി.
നല്ല അവതരണം, ലളിതം മനോഹരം
തുടര്പാഠങ്ങള് പ്രതീക്ഷിച്ചുകൊണ്ട്….

Rasiya Sam June 29, 2010 at 6:39 PM  
This comment has been removed by the author.
സഹൃദയന്‍ June 29, 2010 at 6:47 PM  

ഫിലിപ്പ്‌ സാര്‍..

ഞാന്‍ ആ പി.ഡി.എഫ് ഇട്ടത് കൊണ്ട് താങ്കളുടെ പഠിപ്പിക്കലിനു തടസമായില്ലല്ലോ അല്ലെ...?
പല സംശയങ്ങളും കമന്റുകളില്‍ എത്തുമ്പോള്‍ കൂടുതല്‍ വിവരങ്ങള്‍ അറിയുവാനുള്ള അവസരം ഒരുങ്ങുന്നു..
അത് കൊണ്ട് കമന്റു കൂടി പി.ഡി.എഫ് ആക്കിയാലോ എന്നാ എന്റെ ആലോചന...
(പ്രയോജനപ്രദമായ കമന്റുകള്‍ മാത്രം ...)
പക്ഷെ താന്കള്‍ ഒരു എഫ്.എ.ക്യൂ മാതിരി അവ അവതരിപ്പിച്ചാല്‍ കൂടുതല്‍ നന്നായിരിക്കും..
എന്തു പറയുന്നു...?

ഹോംസ് June 29, 2010 at 7:10 PM  

(മിസ്റ്റര്‍ ജയദേവന്‍,
താങ്കള്‍ക്കുള്ള മറുപടി എത്രതന്നെ പ്രകോപിപ്പിച്ചാലും പരിപാവനമായ ഈ പോസ്റ്റില്‍ തരില്ല!അതിനു നമുക്ക് വേറെ സ്ഥലം കണ്ടെത്താം)
ഇതാ ഫിലിപ്പിന് എന്റെ ഗുരുദക്ഷിണ

wattson June 30, 2010 at 5:46 AM  

പ്രിയ ഫിലിപ്പ് സാര്,
അങ്ങേയ്ക്ക്നന്ദിയുണ്ട് പൈത്തണ് പാഠങ്ങള്ക്ക്.
എന്നെപ്പോലുള്ള സാധാരണക്കാരെ മുന്നില് കണ്ടുകൊണ്ടുകൊണ്ടഴുതിയ പൈത്തണ് പാഠങ്ങള് ഞാന് ആസ്വദിക്കുന്നു.സ്ക്കൂള് ഐടി രംഗത്തെ വിദഗ്ദന്മാര്ക്ക് (?) കഴിയാതിരുന്ന കാര്യമാണ് അങ്ങ് ചെയ്യുന്നത്.

Unnikrishnan.R June 30, 2010 at 7:36 PM  

hello sir njaan oru kurukku vazhi paranju tharam
veruthe IDLE anveshichu pokanda
ethu linxil matramanu ketto
step 1)
right click>>>create launcher
step 2)
Type:aplication in terminal
Name:Python
command:usr/bin/python2.4 depents on versoins)
___________
Eppol oru lancher kittiyille
pinne enthinu IDLE Tappi pokanam
Sasneham
Unnikrishnan.R

shemi July 1, 2010 at 3:44 PM  

സര്‍,വളരെ നന്നായിട്ടുണ്ട്.ഇനിയും കാത്തിരിക്കുന്നു.

ഫിലിപ്പ് July 4, 2010 at 9:32 PM  

Pramode sir,

Thanks! That means a lot to me.


കേരളത്തിലെ സ്വതന്ത്ര സോഫ്ട് വെയര്‍ രംഗത്ത് വളരെ വര്‍ഷങ്ങളായി പ്രവര്‍ത്തിക്കുന്ന, കാലിക്കറ്റ് യൂണിവേഴ്സിറ്റിയിലെ ഗണിതശാസ്ത്ര ബി.എസ്.സിക്കാര്‍ക്കുവേണ്ടി പൈത്തണ്‍, ലാറ്റക്ക് എന്നിവയ്ക്കുള്ള പാഠപുസ്തകം തന്നെ എഴുതിയിട്ടുള്ള (ഇതിവിടെ ലഭ്യമാണ്.), നല്ലൊരധ്യാപകന്‍കൂടിയായ പ്രമോദ് സാറിന്റെ സാന്നിധ്യം നമുക്കൊരു സഹായമായിരിക്കും എന്നതില്‍ സംശയം വേണ്ട!

റസിയ ടീച്ചര്‍, വാട്സണ്‍ സാര്‍ (ഇന്‍സ്പെക്ടര്‍ ലെസ്ട്രേഡും പ്രൊഫസര്‍ മോറിയാര്‍ട്ടിയും ഈ ബ്ളോഗിന്റെ കാര്യം അറിഞ്ഞില്ലെന്നുണ്ടോ?), ഷെമി ടീച്ചര്‍,

നന്ദി.

ചിക്കു,

പിഡിഎഫ് ഇട്ടത് ഉപകാരമായതേ ഉള്ളൂ. വായനക്കാരുടെ ഇങ്ങനെയുള്ള ഇടപെടലുകളാണ് ഇന്റര്‍നെറ്റ് വഴിയുള്ള പഠനത്തെ വ്യത്യസ്തമാക്കുന്നത്.

ഹോംസ് സാര്‍,
ദക്ഷിണയ്ക്ക് നന്ദി!

ഉണ്ണികൃഷ്ണന്‍ സാര്‍,

IDLE-ന് ടെര്‍മിനലിനെ അപേക്ഷിച്ച് ഒട്ടേറെ ഗുണങ്ങള്‍ (പ്രത്യേകിച്ച് പഠനം എളുപ്പമാക്കുന്ന പലതും) ഉള്ളതുകൊണ്ടാണ് അത് ഉപയോഗിച്ച് പഠനമാകാം എന്ന് കരുതുന്നത്. ടെര്‍മിനലും എഡിറ്ററും ഉപയോഗിക്കുന്നതാണ് എളുപ്പം എന്നു തോന്നുന്നെങ്കില്‍ അതും ആകാം: പ്രോഗ്രാമുകളെല്ലാം രണ്ടുരീതിയിലും ഒരുപോലെ പ്രവര്‍ത്തിക്കും.

എനിക്ക് ഈ വ്യാഴാഴ്ച വരെ നല്ല തിരക്കായതുകൊണ്ട് അടുത്ത പാഠം അതിനുമുമ്പ് എഴുതാന്‍ പറ്റുമെന്ന് തോന്നുന്നില്ല. ഈ പാഠത്തില്‍ത്തന്നെ ഹസൈനാര്‍ സാര്‍ നിര്‍ദ്ദേശിച്ച തിരുത്തലുകളും ശ്രീനാഥ് സാര്‍ ഉണ്ടാക്കിയ മനോഹരമായ പിഡിഎഫ് ഫയലും ഉള്‍പ്പടെയുള്ള മാറ്റങ്ങള്‍ വരുത്താന്‍തന്നെ സമയം കിട്ടുന്നില്ല! എന്റെ ഒരു സുഹൃത്ത് സഹായിക്കാമെന്നു പറഞ്ഞിട്ടുണ്ട്. അത് നടക്കുമെങ്കില്‍ ഒന്നുരണ്ടു ദിവസങ്ങള്‍ക്കകം അടുത്ത പാഠം പോസ്റ്റാം. ഇല്ലെങ്കില്‍ വെള്ളിയാഴ്ചയെങ്കിലുമാകും.

-- ഫിലിപ്പ്

ഹോംസ് July 6, 2010 at 9:53 PM  

നാലാം പാഠം പോരട്ടേ...!

Sreenilayam July 10, 2010 at 1:35 PM  

അടുത്ത പാഠം എന്നാണ് പ്രസിദ്ധീകരിക്കുന്നത്? കാത്തിരിക്കുന്നു.

ഹോംസ് July 11, 2010 at 7:42 AM  

എനിയ്ക്ക് പൈത്തണ്‍ നാലാംപാഠം തരൂ...
ഹോം പേജിലെ സംവാദങ്ങളില്‍ പ്രശ്നങ്ങളുണ്ടാക്കാതെ, അനുസരണയോടെ അടങ്ങിയിരുന്ന് പഠിച്ചോളാം ഞാന്‍!

Manju July 12, 2010 at 6:29 PM  

@ ഹോംസ് സര്‍, മന്‍മോഹന്‍ സര്‍, others

ഫിലിപ്പ് സുഖമില്ലാതെ ഇരിക്കുകയായിരുന്നു. അതുകൊണ്ട് അടുത്ത പാഠം കുറച്ചു കൂടി വൈകും. ഇത്ര വൈകിയതിനു ക്ഷമിക്കണം എന്നു പറയാന്‍ പറഞ്ഞു.

ഹോംസ് July 13, 2010 at 6:50 AM  

സാരമില്ല,
ഫിലിപ്പിന് വേഗം സുഖമാകട്ടെ!!

ഫിലിപ്പ് July 15, 2010 at 10:11 PM  

ശ്രീനാഥ് സാര്‍ അയച്ചുതന്ന 600 KB മാത്രം വലുപ്പമുളള, മൂന്നുപാഠങ്ങളുമടങ്ങുന്ന മനോഹരമായ പിഡിഎഫിന്റെ ലിങ്ക് മുകളില്‍ ഇടതുഭാഗത്തായി ഇട്ടിട്ടുണ്ട്. അടുത്ത പാഠം കഴിയുന്നതും വേഗം പോസ്റ്റു ചെയ്യാം.

-- ഫിലിപ്പ്

Sankaran mash July 16, 2010 at 4:59 PM  

നാലാം പാഠത്തിന് കാത്തിരിക്കുന്നു. ഓരോ പാഠത്തിനും ഇത്ര ഇടവേള വേണോ?

ഫിലിപ്പ് July 16, 2010 at 5:59 PM  

ശങ്കരന്‍ മാഷ്,

പാഠം തയ്യാറായി വരുന്നുണ്ട്. കഴിഞ്ഞ ആഴ്ച നല്ല ജോലിത്തിരക്കും അതുകഴിഞ്ഞപ്പോഴേക്കും ചെറിയൊരു അസുഖവും വന്നതുകൊണ്ടാണ് ഇത്തവണ ഇത്ര താമസിച്ചത്. പാഠങ്ങള്‍ ആഴ്ചയില്‍ ഒന്നുവീതം പ്രസിദ്ധീകരിക്കണമെന്നാണ് ആഗ്രഹം.

-- ഫിലിപ്പ്

ഹോംസ് July 17, 2010 at 7:41 PM  

പിഡിഎഫ് ലിങ്ക് വര്‍ക്കുചെയ്യുന്നില്ലല്ലോ...ഇനി എന്റെ കുഴപ്പമാണോന്നറിയില്ല!

ഫിലിപ്പ് July 17, 2010 at 8:01 PM  

ഹോംസ് സാര്‍,

ഇപ്പോള്‍ കിട്ടുന്നുണ്ടോ?

-- ഫിലിപ്പ്

ഹോംസ് July 17, 2010 at 9:05 PM  

:(

ഫിലിപ്പ് July 17, 2010 at 9:14 PM  

ഹോംസ് സാര്‍,

പാഠത്തിന്റെ ഇടതുവശത്തുകാണുന്ന ലിങ്ക് ഇതല്ലേ?

സാര്‍ തന്ന ലിങ്ക് എവിടെനിന്ന് കിട്ടിയതാണ്?

ഹോംസ് July 18, 2010 at 6:43 AM  

ഇതാണ് കിട്ടാത്തത്

ഫിലിപ്പ് July 18, 2010 at 3:37 PM  

ഹോംസ് സാര്‍,

എന്താണ് പിഡിഎഫ് സാറിന് കാണാന്‍ കഴിയാത്തത് എന്ന് മനസ്സിലാകുന്നില്ല. ഈ ലിങ്ക് പല ബ്രൗസറില്‍ നിന്ന്, ലോഗിന്‍ ചെയ്യാതെയൊക്കെ ഉപയോഗിച്ചിട്ടും എനിക്ക് കിട്ടുന്നുണ്ട്. ഫയലിന്റെ അനുവാദങ്ങളും ലിങ്ക് കൈവശമുള്ള ആര്‍ക്കും കാണാവുന്ന രീതിയിലാണ്. ബ്രൗസറിന്റെ Cache വൃത്തിയാക്കി നോക്കിയോ?

-- ഫിലിപ്പ്

ഹോംസ് July 19, 2010 at 6:46 AM  

നന്ദി ഫിലിപ്പ്,
ഇപ്പോള്‍ ശരിയായി. (ഞാന്‍ ഒന്നും ചെയ്യാതെ തന്നെ!)

Sreekala September 5, 2010 at 10:00 AM  

gedit-ല്‍ print "The square root of 2 is ", 2 ** (1/2) എന്ന വരി പ്രോഗ്രാമില്‍ ചേര്‍ത്ത് ഫയല്‍ സേവ് ചെയ്ത് പ്രവര്‍ത്തിപ്പിച്ചാലും 1 എന്നു മാത്രമാണ് ഉത്തരം ലഭിക്കുന്നത്. എന്താണ് അങ്ങനെ?

ശരിയായ ഉത്തരത്തിലേക്കെത്താന്‍ gedit-ല്‍ print "The square root of 2 is ", 2 ** (1.0/2.0) എന്നു കൊടുക്കേണ്ടി വന്നു.

ഫിലിപ്പ് September 5, 2010 at 10:18 AM  

ശ്രീകല ടീച്ചര്‍,

1/2 എന്നതിന്റെ വില എത്രയാണെന്നാണ് പൈത്തണ്‍ പറയുന്നതെന്ന് നോക്കൂ. ഇനി 1.0/2 , 1/2.0, 1.0/2.0 എന്നിവകളുടെ വിലകളും നോക്കൂ.

1, 2 എന്നിവ രണ്ടും പൂര്‍ണ്ണസംഖ്യകളായതുകൊണ്ട് ഇവയുപയോഗിച്ചുള്ള ക്രിയകളുടെ മൂല്യവും പൈത്തണ്‍ പൂര്‍ണ്ണസംഖ്യയായാണ് തരുന്നത്. ഇത് പൈത്തണ്‍ ഭാഷയുടെ ഒരു നിയമമാണ്.

-- ഫിലിപ്പ്

shameer June 24, 2012 at 6:48 PM  

നല്ല ക്ലാസ്സ്‌ ഇതിനൊപ്പം വീഡിയോയും ആഡ് ചെയ്താല്‍ നന്നായിരിക്കും

shameer June 24, 2012 at 6:52 PM  

@ഗീതാസുധി ഞാന്‍ പടിക്കുനുണ്ട് എനിക്ക് വളരെ അത്യവിശമാണ് പൈത്തണ്‍ പ്രോഗ്രാമിംഗ് ലിനക്സ്‌ ലെ ടൂള്‍സ് ഒക്കെ ഉണ്ടാകിയിരികുന്നത് പൈത്തണ്‍ ഉപയോഗിചാണ്

tcrblogger August 11, 2013 at 12:43 AM  

വളരെ നല്ല ബ്ലോഗ്‌ .. പയ്തോൻ ഉപയൊഗിചട്ട് ഉറക്കം വരുന്നതേയില്ല . ആയിരം നന്ദി

പകര്‍പ്പവകാശ സൂചന

SyntaxHighlighter