Showing posts with label Python 3.2 Tutorials. Show all posts
Showing posts with label Python 3.2 Tutorials. Show all posts

පයිතන් වලදී හමුවන Binary Left Shift Operator එක පැහැදිලි කර ගමු.

පයිතන් වල දී මෙන්න මෙහෙම ගැටළුවක් අහලා තිවෙනවා.
12>>2 මේකට ලැබෙන උත්තරය මොකක්ද කියලා.
උත්තරය තමයි 3.
නමුත් දැන් තියෙන ගැටළුව තමයි කොහොමද 3 ආවේ කියන එක.

Image result for පයිතන්

මේක පයිතන් වලදී හමුවන්නේ (<< Binary Left Shift ) Operator එක ලෙසයි.
තවත් පැහැදිලිව කීවොත් ද්විමය සංඛ්‍යා ගුණ කිරීමේ ක්‍රමයක් තමයි මෙයින් නිරූපණය වෙන්නේ.

ඉහතින් දී ඇති ගැටළුව නැවත සලකා බැලුවහොත්
දශමය 12>>2
මෙහි දිවිමය පරිවර්තනය 1100දෙක>>2
                                                 1100>>2 (>>2 ලෙස යෙදී ඇති බැවින් ද්විමය අගයේ අවසන් අගයන් දෙක                                                    කපා ඉවත් කෙරේ)
දැන් ඉතිරි වන 11දෙක  දහයට පරිවර්තනය කළ විට ලැබෙන පිළිතුර වන්නේ 3යි.

Visual Studio භාවිතා කර Python code කරමු.

පයිතන් පරිගණක භාෂාව පිළිබඳවත් එය පාසල් පද්ධතියට හඳුන්වාදීම පිළිබදවත් විවිධ අදහස් ඇති අය මෙම දීර්ඝ වීඩියෝවේ පළමු විනාඩි 40 නැරඹීම අතිශයින් වැදගත් වනු ඇතැයි සිතමි.



Python 3.3 Worksop (බුත්තල) Tutorial

ඌව පළාත් අධ්‍යාපන දෙපාර්තමේන්තුව සංවිධානය කළ උසස් පෙළ තොරතුරු හා සන්නිවේදන තාක්ෂණය විෂය උගන්වන ගුරුවරුන් සඳහා වූ පයිතන් භාෂාව පිළිබඳ තෙදින වැඩමුළුව ජුලි මස 17, 18 හා 19 දින වලදී බුත්තල තොරතුරු තාක්ෂණ සම්පත් මධ්‍යස්ථානයේ දී පැවැත්විණි.

මේ එහි මතක සටහන් කීපයක්.






මෙම වැඩ මුළුවේදී සාකාච්ඡාවට බඳුන් කළ නිබන්ධනය පහත දැක්වේ.

4. Python 3.3 - විචල්‍යයන් භාවිත කරන ආකරය (Using Veriables in Python 3.3)

විචල්‍යයන් භාවිතය පරිගණක ක්‍රමලේඛණයක් ලිවීමේ දී අතිශයින් වැදගත් කාර්යයකි. ඒ නිසාම අපි මෙම භාෂාව අධ්‍යයනය කිරීමේ දී මෙම සංකල්පය ඉතා හොඳින් අවබෝධ කරගෙන සිටීම වැදගත් වෙනවා.

මෙම වීඩියෝවෙන් මම පැහැදිලි කරනුයේ කොහොමද අංක සහ අකරු විචල්‍යයන් විදියට පයිතන් භාෂාවේ දී භාවිත කරන්නේ කියලා.

This is introduction of using Variables in Python 3.3


3. Python 3.3 වලදී අකුරු භාවිත කරමු. (Using Strings in Python 3.3)

අද පයිතන් පාඩම් මාලාවේදී අපි කතා කරන්නේ Strings පිළිබඳවයි. Strings එහෙම නැතිනම් Text කොහොමද පයිකන් භාෂාවේ දී භාවිත වන්නේ කියලා අත්හදා බලන්නයි යන්නේ. ඒ සඳහා පහත වීඩියෝව වෙත යොමු වන්න.

 This video is a Demonstration about using Strings in Python 3.3




Python 3.3 shell එක භාවිතයෙන් ගණනය කරමු. (2) Calculations using Python 3.3 shell

උසස් පෙළ තොරතුරු හා සන්නිවේදන තාක්ෂණ විෂය හදාරණ ළමුන් ඉලක්ක කරමින් නිර්මාණය කර මෙම පයිතන් වීඩියෝ මාලාවේ දෙවැන්නේ දී අපි සාකච්ඡා කරනුයේ Python 3.3 shell එක භාවිතයෙන් ගණනය කිරීම් කර ගන්නා ආකාරයයි.

To day we are discussing about the calculations in python language using Python 3.3 shell. Go through with it and let me know your comments.

පයිතන් 3.3 වින්ඩෝස් 7 වල ස්ථාපනය කර ගන්නා ආකාරය (How to install Python 3.3 in windows 7)

මීට පෙරදී අපි පයිතන් ක්‍රමලේඛන භාෂාව භාවිත කරන ආකාරය පිළිබඳව ලිපි මාලාවක් සකස් කලා මතක ඇති. එම ලිපි සඳහා ඔබගෙන් ලැබුනු ප්‍රසාදය නිසාම එම ලිපි වීඩියෝ වශයෙන් නැවතත් සකස් කර ඉදිරිපත් කරන්න අදහස් කලා. මේ එම ලිපි මාලාවේ පළමුවැන්න.

In this video am explaining how to download and install python 3.3 in windows 7. 


ඒ අනුව මෙවර පයිතන් නව සංස්කරණයක් වන 3.3 භාවිතයෙන් තමයි මෙම වීඩියෝ සැකසීම සිදු වන්නේ. මේ පිළිබඳව අදහස් උදහස්  ඇත්නම් ඉදිරිපත් කරන්න.

පයිතන් භාෂාව

පයිතන් යනු බහුලව භාවිතාවන උසස් මට්ටමේ ක්‍රමලේඛන භාෂාවක් වන අතර එය නිර්මානය කර ඇත්තේ කේත කියවීමේ පහසුව අවධාරණය අ‍යුරිනි. පයිතන් සතුව ඇති අපුර්ව ගුණය වන්නේ එහි ඇති නිරවුල් කේත වින්‍යාසය සහ එහි සම්මත වැඩසටහන් ගොනුව ඉතා විශාල හා පරිපූර්ණ එකක් වීමයි. අනෙකුත් ප්‍රචලිත ක්‍රමලේඛන භාෂාවන් අතරින් මෙහි ඇති විශේෂත්වය නම් ක්‍රමලේඛනයේ භාවිතා වන පරිසීමක ඛණ්ඩක අතර හිස් ඉඩ තැබීම් වේ. පයිතන් බහු ක්‍රමලේඛන නාම මාලාවන්ට සහය වන අතර නමුත් එය සීමා නොවන්නේ වස්තු මූල,ප්‍රගම්‍ය හා ඉතා සුළු වශයෙන් කෘත්‍යයාත්මක ක්‍රමලේඛන රටාවන්ට පමණි.එය පූර්ණ ගතික පද්ධති වල ගුණ පෙන්වන අතර ස්වං මතක පාලනයද සිදුකරයි.එම ගුණය සමාන වන්නේ ස්කීම්,පර්ල්,රූබි හා tcl වැනි ගතික ක්‍රමලේඛන භාෂාවන්ටයි.පයිතන් නොයෙක් විට ස්ක්‍රිප්ටින් ලිවීමට භාවිත කලද එය බහුලව භාවිත වෙනත් කාර්යයන් සඳහාය.පයිතන් ක්‍රමලේඛන පරිගණක වල ධාවනය වන වැඩසටහන් තුලට අන්තර්ගත කල හැකිය.පයිතන් පරිවර්ථක බොහෝ [පරිගණක] පාලක පදධති වල අඩංගු වේ. පයිතන් යනු නිදහස් හා විවෘත මෘදුකාංග ගනයට අයත් මෘදුකාංගයකි. එහි ඇත්තේ ප්‍රජාව මත පදනම්වූ සංවර්ධන ක්‍රමයකි.එහි සම්පූර්ණ හෝ විකල්ප සංස්කරණ සිදුකරයි.සීපයිතන් කළමණාකරනයන් සිදුකරන්නේ ලාභ නොලබන ආයතනයක් වන පයිතන් මෘදුකාංග පදනම මගිනි.

ඉතිහාසයපයිතන් පිළිබඳ මුලින්ම අදහසක් ඇති වූයේ 1980 අග භාගයේය.එය ක්‍රියාත්මක කලේ ගයිඩො වෙන් රොසම්(Guido van Rossum) විසින් 1989 සිටයි.ඔහු ABC ක්‍රමලේඛණ භාෂාවේ ප්‍රවිණයෙකි එමෙන්ම එක්ස්සෙප්ට්ශන් හැඩලින් හා ඇමොයිබා මෙහෙයුම් පද්ධතියේ(Amoeba operating system) මුහුනත නිර්මාණය කිරීමේ ප්‍රවීණයෙකි.ඔහු පයිතන්හි මූලධර්ම රචකයාය. පයිතන් ප්‍රජාව විසින් ඔහුට පිරිණමා ඇති ප්‍රමුඛ ප්‍රධාන කාර්ය වන්නේ පයිතන්හි ඉදිරි ගමන තීරණය කිරීමයි පයිතන් 2.0 සංස්කරණය නිකුත්කලේ 2000වසරේ ඔක්තෝබර් 16 වනදාය.එහි නව අංග රැසක් අන්තර්ගත කර තිබුණා. ඒහි ගාබේජ්කලෙක්ටර් හා යුනිකෝඩ් සඳහාද පහසුකම් ලබාදී තිබුණා ඒමෙන් ම එහි විශේෂම වෙනස නම් සංවර්ධන ක්‍රියාවලිය ඔවුන් විසින් සිදුකිරීමත් එය වඩා විනිවිදභාවයෙන් හා නැවත ප්‍රජාව වෙතම සහන සැලසීමේ වැඩසටහනක් වීමයි.පයිතන් 3.0(පයිතන් 3000,py3k) සංස්කරණය නිකුත්කලේ විශාල කාලයක් තුල සිදුකල අත්හදා බැලීම් වලින් අනතුරුව 2008 දෙසැම්බර් 3වනදාය.එය නිකුත්කලේ පෙර සංස්කරණ වන 2.6 හා 2.7 සමඟද ක්‍රියාත්මකවන අයුරින්ය. එය TIOBE වසරේ ක්‍රමලේඛන භාෂාව ලෙස 2006 හා 2010 වර්ෂ වලදී දෙවරක් සම්මාන ලබාගත්තා. එය ලබාදීමට එම වසර වලදී හේතුවූයේ පයිතන්හි අසමසම ජනප්‍රියත්වයේ වර්ධනය නිසාය.එය නීර්ණය කලේ TIOBE දර්ශකය අනුවයි.

ක්‍රමලේඛණ දර්ශණය
පයිතන් බහු පැරඩිගමි භාෂාවකි.එම නිසා ක්‍රමලේඛකයන්ට විශේෂ ක්‍රමලේඛණ ආරකට හුරු වීමට සිදුවී තිබුණා.එය ඔබ්ජෙක්ට් ඔරියන්ටඩ් හා වි‍යුහාත්මක ක්‍රමලේඛණ වලට සහය දක්වනවා. තවද එය කෘත්‍යාත්මක හා ඇස්පෙක්ට් ඔරියන්ටඩ් ක්‍රම ගනනක භාෂා ලක්ෂණ ලබා දී තිබෙනවා. අනෙකුත් පැරඩිගම් සඳහා භාෂා දිගුවන් මඟින් පහසුකම් ලබා දි තිබෙනවා. ඒ pyDBC හා පයිතන් සඳහා වූ කන්ට්‍රාස්ට්ය. පයිතන් නිර්මාණය කර ඇත්තේ විතන්‍ය භාෂාවක් ලෙසයි. අළුතින් සාදාඇති අංගයන් c හා c++ මඟින් ලියන්නට පුළුවන්. පයිතන් දැනට පවතින මොඩියුල් හා යෙදීම් වල දිගුවන් සඳහා ක්‍රමලේඛන භාෂාවක් ලෙස යොදා ගතහැකියි. මේ සඳහා ක්‍රමලේඛිත මුහුණතක් අවශ්‍යවෙනවා.ABC භාෂාවේ දුර්වලතා නිසා මෙය නිර්මාණය කර ඇත්තේ වෙන් රොසම් විසිනි.

ශ්‍රිතීය ක්‍රමලේඛණය තුල වූ ළිස්ප් සම්ප්‍රදාය සඳහා පයිතන් සීමිත සහයක් පමණක් ලබා දෙයි. කෙසේ වෙතත් පයිතන් හි රටාව පෙන්නුම් කරන්නේ ළිස්ප් වර්ගයට අයත් අවම භාෂාවල වැදගත් සමානකම්ය.(scheme)

 භාවිතය
පයිතන් ස්ක්‍රිප්ටින් භාෂාවක් ලෙස වෙබ් යෙදුම් සඳහා බොහෝවිට භාවිතා කරයි Django, Pylons, TurboGears, web2py, Flask.සහ Zope වැනි වෙබ් යෙදුම් මුහුණත්හි සංකීර්ණ යෙදුම්වල නිර්මාණ හා නඩත්තු සඳහා රුකුල් දෙයිNumPy, SciPy,Matplotlib යන ලයිබ්(රී වල පයිතන් කාර්යශම පරිගණය සඳහා භාවිත වේ. මෘදුකාංග නිශ්පාදන ගණනාවක එනම් පරිමිත අංග ක්‍රමයේ මෘදුකාංග එනම් ඇබකස් සහ ත්‍රිමාණ සජීවීකරණ පැකේජ එනම් හොයුඩිනි,මායා,මෝෂන්බිල්ඩර්,සොෆ්ට් ඉමේජ්,සිනමා 4D,මෝඩා හා බ්ලෙන්ඩර් තවද 2D මූර්තන වැඩසටහන් එනම් GIMP,ඉන්ක්ස්පේස්,ක්‍ර‍යිබස් හා පේන්ට් ෂොප් ප්‍රො වල පයිතන් ස්ක්‍රිප්ටින් භාෂාව ලෙස සාර්ථකව භාවිතකරයි.ESRI දැන් පයිතන් ArcGIS වල පිටපත් ලිවීමට ඉතා සුදුසු බව ප්‍රකාශකර ඇත. එය පරිඝණක ක්‍රිඩා වලද භාවිතා කරතිබෙනවා. පයිතන් සම්මත සංරචකයක් ලෙස බොහෝ පාලක පද්ධතිවල එනම් ලිනක්ස්,නිදහස්BSD,ජාලBSD,විවෘතඹ්Sඹ් හා මැක්OSX වල භාවිතා කරයි. ටර්මිනල හරහාද භාවිතා කරයි.
බොහෝ ලිනක්ස් බෙදා හැරීම් ප්යිතන් භාෂාවෙන් ලියවුනු ස්ථාපනය කිරීම් වලද භාවිතා කරයි.උබන්ටු යුබික්විලිටි ස්ථාපන,රෙඩ් හැට් හා ෆෙඩෝරා වල ඇනකොන්ඩා ස්ථාපන,ගැන්ටු ලිනක්ස් හි පැකේජ පාලක පලක පද්ධති,ගැන්ටු ලිනක්ස් හි පැකේජ පාලක පද්ධති වල වලද භාවිතා කරයි.

සින්ටැක්ස් සහ සෙමෙන්ටික්ස්
පයිතන් නිමාණය කර ඇත්තේ කේත කියවීමේ පහසුව අවධාරණය වන අ‍යුරිනි අපැහැදිලි නැති ලෙස එය නිමවා අත්තේ ඉංග්‍රීසි ඉඟි පද භාවිතයෙනි. එමෙන්ම කාරක රීති එක්සෙප්ෂන්ස් ප්‍රමාණයද අඩුය.

 කේත අතර ඉඩ තැබීම. 
මේ සඳහා පයිතන් whitespace භාවිතා කරයි. එක්තරා ස්ටේට්මන්ට්ස් ප්රකමාණයකින් පසු ඉන්ඩෙන්ටේෂන්/ ඉඩ තබීම් වැඩි කරයි. ඉන්ඩෙන්ටේෂන්/ ඉඩ තබීම් අඩුවීමෙන් පෙන්වන්නේ දැන් පවතින බ්ලොක් එකෙහි අවසානයයි


විධි ක්‍රමය
යම් ඔබ්ජෙක්ට් එකක ඇති මෙතඩ්ස් එනම් විධි ක්‍රම අදාල ඔබ්ජෙක්ට් එකෙහි ඇති ක්ලාස් වලට අයත් ෆන්ෂන්ස්/කෘත්‍යයන් වේ. සාමන්‍ය විධි ක්‍රම හා කෘත්‍යයන් සඳහා සින්ටැක්ස් එක නම් instance.method(argument).සින්ටැක්ටික් ෂුගර් සඳහා Class.method(instance, argument). පයිතන් මෙතඩ්ස්/විධි ක්‍රම වලට නිදර්ශක දත්ත පරිශීලනයට නිශ්චිත පරාමිතීන් ඇත. මෙම ලක්ෂණය ජාවා, C++ ආදී අනෙකුත් ඔබ්ජෙක්ට් ඔරියෙන්ටඩ් ක්‍රමලේඛන භාෂා වල ඇති ඉම්ප්ලිසිට් ක්‍රම වලට වඩා වෙනස්ය.

ස්ටේට්මන්ට් සහ කන්ට්‍රෝල්ෆ්ලෝ

  • if statement-else හා elif ඔස්සේ කේත ඛණ්ඩය කොන්දේසි පිට එක්සිකියුට් කරයි.
  • for statement-සබැදි කොටසේ නැවත නැවත යෙදෙන ආවේණික විචල්‍ය යලි යලිත් ක්‍රියාත්මක කරයි.
  • while statement- කොන්දේසිය සත්‍යවන තුරු කේත ඛණ්ඩය එක්සිකියුට් කරයි
  • class statementනෙම්ස්පේස් එහි ක්ලාස් එකට යාවනතුරු කේත ඛණ්ඩය එක්සිකියුට් කරයි. මෙය OOP වල භාවිත වේ.
  • def statement-ශ්‍රිතීය හෝ විධික්‍රම ලෙස අර්ථ දක්වා ඇත.
  • with statement-(පයිතන් 2.5 සිට්) කේත ඛණ්ඩය කොන්ටෙක්ස් මැනේජරය මඟින් අහුරාලයි
උපුටා ගැනීමකි. 

Python(පයිතන්) හඳුනා ගනිමු


Python(පයිතන්) හඳුනා ගනිමු

දහසක් පරිගණක භාෂා අතරින් තවත් එක් පරිගණක භාෂාවක්. දහසක් පරිගණක භාෂා අතරින් පයිතන් සුවීශේෂී වන්නේ එහි ඇති වේගය, ඉතා ඉක්මනින් ඉගන ගත හැකිවීම, කුඩා කේත ප්‍රමාණයකින් ලිවීමේ හැකියාව වැනි බොහෝමක් අංගයන් නිසා. ඒ අතරින් වඩාත් වැදගත්ම ලක්ෂණය පයිතන් වලින් ලියන ලද පරිගණක වැඩසටහන් (MS Windows, Linux(Unix-like), Mac OSX,Amiga, Palm Handheld,Symbian OS Series60  ආදී)බොහෝ පද්ධති ගණනක ධාවනය කළ හැකිවීම යි. ලොව ජනප්‍රියතම වෙබ් අඩවි කීපය අතර වන ගූගල් වෙබ් සෙවුම් යන්ත්‍රය (Google search engine), YouTube  ආදී වෙබ් අඩවි ද  BitTorrent, Gentoo Portage වැනි ඩෙස්ක්ටොප් පරිගණක වැඩසටහන් ද මේ මගින් නිපැයූවන් වීම පයිතන්හී සූවිශේෂී භාවයට හොඳ සජීවී නිදසුන් කිපයක් පමණ යි.

            කේත රචනයට යොමුවීමට අදහස් කර සිටන නවකයන්ට ද  ආරම්භයක් ලෙස ඉතා පහසුවේ කේතන ක්‍රමවේද ඉගැනුම සඳහා යොදාගන්න පුළුවන්. එය එතරම්ම සරලයි. ඒ වගෙම විනෝදාත්මක යි. ආධුනිකයෙකුට පයිතන් ඉගැනුමේ ලොකුම වාසිය අත්වන්නේ එකම පරිගණක භාෂාවක් මගින් විවිද පරිගණක ක්‍රමවේ ද(imperative,  functional, object oriented) අත්හදා බලා ඉගන ගැනුමට හැකිවීම යි. පයිතන් හී නිල වෙබ් අඩවිය (http://www.python.org) මගින් ඔබට පයිතන් භාගත කරන්න පුළුවන්. වැදගත්ම කාරනය වනුයේ එය නොමිලේම භාගත කළ හැකි විවෘත සහ නිදහස් මෘදුකාංගයක් වීම යි.

මෙතෙක් ආමග
විවිද  ක්‍රමවේද  භාවිතා  කරන්නත් පුළුවන්
කේත  ලියන්නේත්  අමුතු ක්‍රමය කට
Scripting Language එකක් ලෙසටත් ඉදිරියන්
විශේෂ යෙදුම්
Standard library විශාල ගණනක්
අවසන් සටහන

මෙතෙක් ආමග
          1990 දී ලන්දේසි ජාතිකයෙකු වන Guido von Rossum විසින් පයිතන් ලොකයට හඳුන්වා දුන්නා. මූලිකව පයිතන් නිර්මාණය කරලා තියෙන්නේ ABC නම් පරිගණක භාෂාවේ ඇති ලක්ෂණ බොහෝමයක් ආභාෂට අරගෙන. දැන් වන විට පයිතන් ලෝකයම ආක්‍රමනය කරලා කිව්වොත් වැරදි නෑ. Desktop Applications, වෙබ් අඩවි වලින් නොනැවතී දුරකථන සඳහා ද තම අනසක පතුරන්නටත් මේ පිඹුරාට(පයිතන්) හැකි වෙලා තියෙනවා. මේ ලිපිය ලියන විට python 3.0 වෙළුම නිකුත් වේලා අවසාන යි. නමුත් ඉදිරියේදී ලිපිවලදී විශේෂයෙන් සඳහන් නොකරන ලද අවස්තාවන් හීදී  2.6 වෙළුම භාවිතා කිරීමට අදහස් කර ඇත. ඒ බොහෝමයක් තුන්වෙනි පාර්ශවයන් විසින් නිර්මිත මොඩියුලයන් තවම නව වෙළුමට යාවත් කාලින කර නැති නිසා.

විවිද  ක්‍රමවේද  භාවිතා  කරන්නත් පුළුවන්
            පයිතන් මගින් ‍කේතනය කිරීමේදී object oriented, imperative (Procedural/Structured),  functional ආදී කේතන ක්‍රම(programming paradigms)  කීපයන් කැමති ක්‍රමයකින් හෝ ඇවැසිනම් object oriented අමතක කර Procedural ක්‍රමයටම වුවද භාවිතා කරන්න පුළුවන්. එසේම එමගින් ලියන ලද කේතයක් ජාවා(java) හෝ ඩොට් නෙට්(.net) මත පවා ධාවනය කරන්නට සුදුසු පරිදි සකස් කළ හැකිවීමත් විශේෂ වාසියක්. තවද C, C++ ආදී  පරිගණක භාෂා මගින් ලියන ලද මොඩියුලයන්ට පයිතන් පහසුවේන් සංකලනය(integration) කළ හැකි යි. අවශ්‍ය නම් C වල සිට Python මොඩියුලයන් ගේ  සහය ද ලභා ගත හැක.

කේත  ලියන්නේත්  අමුතු ක්‍රමය කට
            පයිතන්හී කේතනය සඳහා යොදාගන්න ක්‍රමවේදය(syntax) ඉතා සිත්ගන්නා සුළුයි. වෙනත්  පරිගණක භාෂාවන් වල ‍මේ ක්‍රමය සුළභව භාවිතා කරලා නැහැ. ‍සාමාන්යෙන් බොහෝමයක් පරිගණක භාෂාවන්හී කේත කොටසක් වෙන් කර දැක්වීමට සඟළ වරහන්, විශේෂ කී වර්ඩ්(begin, end, end sub, end if ...)  ආදිය භාවිතා වන මුත් පයිතන් හී භාවිතා කරන්නේ ඉන්ඩන්ටේෂන් එකයි.. මෙහිදී වෙන්කර දැක්වීමට කේතයන් එක පෙළට හිස් තැන් මගින් හෝ ටැබ්(tab) මගින්  දැමීම මගින් සිදු කරනවා. මේ ලක්ෂණය නිසා සමහර නවකයන් පසුබෑමකට ලක් වෙනවා. ඒ මීට කලින් වෙනත් පරිගණක භාෂා වල ක්‍රමවේදයන්ට ඇබ්බැහි වී සිටින නිසා යි. පසුබට නොවී උත්සහ කළහොත් එය වඩා පහසු බව වැටහේවී.

Scripting Language එකක් ලෙසටත් ඉදිරියන්
            පයිතන් Scripting Language එකක් ලෙසටද භාවිතා කළ හැකියි. Scripting Language ලෙස හඳුන් වනුයේ කම්පයිල් කිරීමකින් තොරවම ධාවනය කළ හැකි කේතයන් සහිත පරිගණක භාෂවන්ටයි. මේ ගුණාංගය නිසා වෙබ් අඩවි නිර්මාණයටද විවිද පරිගණක වැඩසටහන් වලට ඔබ්බවා ඇති   භාෂාවක් සේද භාවිතා කරයි. Blender, Maya, Houdini, Softimage XSI, TrueSpace, Poser, Modo, Nuke  ආදී ත්‍රිමාණ රූප නිර්මාණ මෘදුකාංග මීට හොඳ උදාරහණයක්.

විශේෂ යෙදුම්
පයිතන් සඳහා යෙදුම් විශාල ගණනක් තියෙනවා. CPython, Jython, IronPython, PyPy, PyS60 ආදිය ඉදිරියෙන් ඉන්නවා.  Jython මගින් පයිතන් කේතයන් ජවා බයිට කෝඩ් බවට පරිවර්තනය කරන්නත්  IronPython මගින් පයිතන් කේතයන් .net  හෝ මොනෝ  Framework සඳහා පරිවර්තනයත් සිදු කරයි.

PyS60 යනු Nokiya දුරකථන සඳහා නිරමිත පයිතන් පරිවර්තක යයි.

Standard library විශාල ගණනක්

සම්මත මොඩියුල විශාල ගණනක් පයිතන් සඳහා තිබීම එ‍හි ඇති  වාඩාත්ම වැදගත්ම ලක්ෂණ යයි. එනම් බොහොමයක් නිතර භාවිතා වන කේත කොටස් බොහෝමයක් පයිතන් වල අඩංගු වෙලා තියෙනවා. මේ නිසාම තමයි පයිතන් සමගින් ඉතාමත් පහසුවේන් හා ඉක්මනින් කේත රචනයේ යෙදෙන්න පුළුවන් වෙලා තියෙන්නේ.

First steps of Python
පසුගිය කොටසින් අපි පයිතන් හා බැඳුන් වට පිටාව ගැන සොයා බැලුවා. මෙවර අපි සත්‍ය ලෙසටම පයිතන් මගින් ක්‍රමලේඛනයක් ලියන්න උත්සාහ කරමු.
ආරම්භය පෙර
පයිතන් පරිගණකයට ස්ථාපනය
Python IDLE (Integrated DeveLopment Environment)
IDLE එක ගණක යන්ත්‍රයක් ලෙස

ආරම්භය පෙර
පරිගණකය යනු ඉලෙක්ට්‍රොනික උපාංගයකි. පරිගණකය සඳහා ලියනු ලබන සියලුම වැඩසටහන් අවසානයේ මේ ඉලෙක්ට්‍රොනික දත්තයන් බවට පරිවර්තනය සිදු කළ යුතුය. අපි පරිගණකයට ලියනු ලබන වැඩසටහන් අප ලියන්නේ මනුෂයන්ට කියවිය හැකි ආකාරයටය. නමුත් පරිගණකයට වැටහෙනුයේ ඉලෙක්ට්‍රොනික භාෂාවය. එයට Machine Language යැයි අපි කියමු. එය binary නැතිනම් ද්වීමය සංක්‍යා වලින් සෑදුනු පරිගණක විධාන වලින් සමන්විත පරිගණකයේ ක්‍රියාකාරීත්වය සිදුවිය යුතු ආකාරය දැක්වෙන සම්මතයකි. පරිගණකය මේ ද්වීමය සංඛ්‍යා විදුලිය ඇත නැත යන පදනම මත තේරුම් ගනී. නමුත් මේ binaryකේතයන් මිනිසින්ට තේරුම් ගැනීම අපහසුය. එසේම එම විධානයන්මගින් පරිගණකයට ක්‍රමලේකනය කිරීමට ඉතා දීර්ග කාලයක් වැය කිරීමට සිදුවේ. යම්කිසි ආකාරයකින් මිනිසුන්ට පවා කියවිය හැකි අයුරන් යම් යම් නීතී-රීතී අනුපිලිවලකට ලියන ලද ‍විධානයන් සමූහයක් machine readable(පරිගණකයට කියවිය හැකි) ආකරයට පරිවර්තනය කරන මෘදුකාංගයට අපිcompiler එකක් හෝ interpreter එකක් හෝ යැයි කියමු. එසේම එකිනෙකට වෙනස් වෙනස් ආකාරයට මේ නීති-රීති සමූහයන් සඳහා සම්මත මිනිසුන් විසින් සකසා ඇත. අපි පරිගණක භාෂාවන්(programming languages) ලෙස හඳුන්වන්නේ ඒවායි. මෙම සම්මතය ඉගනගත් විට මිනිසුන්ට කියවිය හැකි නිසා අපිට ඒවාට human readable කේතයන්(codes) ලෙස හඳුන්වයි.

මෙසේ human readable කේතයන් machine readable බවට පරිවර්තනය කිරීමේ ප්‍රධාන ක්‍රම දෙකක් වේ. එකක් නම් එක වරම human readable කේතයන් සියල්ල machine readable බවට පරිවර්තනය කිරීමයි. මෙම ක්‍රියාවලියට අපි compilation යැයි කියමු. මෙය සිදුකරන මූදුකාංගයට compiler ය යැයි කියයි. මෙසේ කම්පයිල් කරගත් පසුව මුල් human readable කේතය තව දුරටත් අවශ්‍ය නෙවේ. අවශ්‍ය වේනම් ඒ නැවත වෙනස් කමක් කිරීමට ඇත්නම් පමණි. මෙම ක්‍රමයේ අවාසියනම් එක් පරිගණක පද්ධතියක් සඳහා compile කරන ලද මෘදුකාංගයක් වෙනත් පද්ධතියක දාවන කිරීමට නොහැකි වීමයි. compiler ය විසින් විවිද පද්දති සඳහා compile කිරීමට පහසුකම් සලසා ඇතිනම් අපට විවිද පද්ධති (Windows/ Linux/ mac os ආදී...) සඳහා එකම human readable code එක කීපවරක් compile කිරීමට සිදුවනු ඇත. අනෙක් ක්‍රමය නම් human readable code පරිගනකය තුලදී දාවනය කිරීමට අවශ්‍ය විටදී එවෙලේම කොටසින් කොටස පරිවර්තනය කිරීමයි. මේ ක්‍රියාවලියට සිදුකරන මෘදුකාංගයට අපි interpreter යැයි කියමූ. මේ ක්‍රමයේ ඇති වාසියනම් interpreter ය සහය දක්වන ඕනෑම පද්ධතියක් තුල ධාවනය කළ හැකි වීමයි. අවාසිය නම් පරිගනකයට එක වර වැඩ දෙකක් කිරීමට සිදුවන නිසා(පරිවර්තනය සහ එම කේත ධාවනය) පරිගණක වැඩසටහන compiled පරිගණක වැඩසටහනකට වඩා වේගයෙන් තරමක් අඩු වීමයි.

 
පයිතන් interpreted පරිගණක භාෂාවක්. ඒ නිසා python මගින් නිර්මිත වැඩසටහන් python සහය දක්වන ඕනෑම පද්ධතියක් මත ධාවනය කළ හැකියි. නමුත් ඔබට පයිතන් මගින් human readable code එකක් intermediate code එකක් බවට පත් කළ හැකියි. intermediate code එකක් යනු human readable හා machine readable යන‍දෙකෙන් කොයිකටවත් අයිති නැති කොටසකි. එනම් ඔබට python මගින් කේතයක් (human readable code) එකක් compile කළවිට ලැබෙන්නේ machine readable code එකක් නොවේ intermediate code එකක්. මේ කේතයන්ට අපි python byte code එහෙමත් නැතිනම් python object code එකක් කියලා කියනවා. සාමාන්යෙන් compiler එකක් human readable code එකක් machine readable code එකක් බවට පරිවර්තනය කරිමේදී තාවකාලික ලෙස මෙසේ අතර මැදි ‍object code එකක් සාදයි. ඉන්පසු linker නම් විශේෂ මෘදුකාංගයක් මගින් සියළුම object code එකතු කර machine code එක බවට පරිවර්තනය කරයි. නමුත් python compilerය object codeඑක සාදා එතනින් නවත්තවයි. ජාවා පරිගණක භාෂාවේද මෙම ලක්ෂනය ඇත. නමුත් අපිට අවශ්‍යනම් ‍python කේතයන් compile නොකර වුවද භාවිතා කළ හැකියි. ධාවනය කළ හැකියි. සාමාන්යෙන් පයිතන් කේතයන් අඩංගු ගොනුවක් py කියන දිගුව(extension) සහිතව සුරැකිය යුතුයි. උදාහරණයක් ලෙස hello.py යන ගොනුවක් ඇත්නම් එයින් හැඟවෙන්නේ ඒ කම්පයිල්නොකරන ලද පයිතන් ගොනුවක් බවයි. සාමාන්යෙන් කම්පයිල් කළ පසු මේ ගොනුවේ extension එකpyc(හෝ pyo) ලෙස වෙනස් වෙනවා.

පයිතන් පරිගණකයට ස්ථාපනය

බොහෝමයක් ලිනක්ස් පද්ධති සමග python ලැබෙනවා. වින්ඩොස් පද්ධතියකදී නම් http://www.python.org/ftp/python/2.6.1/python-2.6.1.msi මගින් python ස්තාපනය කරගන්න.

පයිතන් මගින් කේතනය ආරම්භ කරන්න හොඳම තැන තමයි මේක. ‍ඇත්තෙන්ම මෙය ‍විනෝදාත්මකයි. ගණක යන්ත්‍රයක් විදියටත් භාවිතා කරන්න පුළුවන්.
වින්ඩොස් පද්ධතියකනම් Start >All program >Python 2.6 >IDLE (Python GUI) යටතේ ධාවනය කළ හැකියි. Linux පද්ධතියකනම් Terminal එක මත python ලෙස ටයිප් කිරීම මගින් ලබාගන්න පුළුවන්.
දැන් පළමු කේතය ලියන්නට පටන්ගමු. සාම්ප්‍රදායික ලෙස මුල්ම වැඩ සටහන සඳහා Hello World යන වචන දෙක මුද්‍රනය කරන ආකාරය බලමු. මේ සඳහා IDLE එකේ print "Hello World!"ලෙස සටහන් කරන්න.



 

IDLE එක ගණක යන්ත්‍රයක් ලෙස


එසේම ඔබට IDLE එක ගණක යන්ත්‍රයක් ලෙස භාවිතා කළ හැකියි. මේ උදාහරණ කීපයක්.

>>>1+4
5
>>>30+99
129
>>>1125+5374
6499
>>>7-6
1
>>>14-20
-6
>>>5*5
25
>>>5**2
25
#මෙහිදී 5**2 මගින් 5හි දෙවන බලය හඟවයි. ** මගින් සංඛ්‍යාවක බලය දක්වනු ලබයි.
>>>6/2
3
>>>10/3
3
#ඉතිරිය නොසලකා ඇත
>>>10.0/3.0
3.3333333333333335
#දශම සහිතව සංඛ්‍යා බැවින් ඉතිරිය දශම සහිතවම දක්වා ඇත
>>>10%3
1
>>>28%5
3
# “%”සලකුණ මගින් සංඛ්‍යාවක් බෙදූ පසු ලැබෙන ඉතිරිය දැන ගත හැක.

ගණිත සලකුණු

Command and description  
+  Addition සංඛ්‍යා දෙකක් එකතු කරීම භවිතා කරයි
   >>>4+5
   9
-   Subtraction  සංඛ්‍යා දෙකක් අඩුකිරීමට කරීම භවිතා කරයි
   >>>9-4
   5
*  Multiplication සංඛ්‍යා දෙකක් ගුණකිරීමට භවිතා කරයි
   >>>3*6
   18
/   Division   සංඛ්‍යා දෙකක් බෙදීමට භවිතා කරයි
   >>>9/3
   3
% Remainder   සංඛ්‍යා දෙකක් බෙදූවිට ලැබෙන ඉතිරය දක්වයි.
   >>>9%2
   1
**    Exponent සංඛ්‍යායවක බලය දක්වයි.(දර්ශකය)
   >>>9**3
   729

ඔබ 6 වසරේ ගණිතයේ උගත් ගණිත සලකුණු වල ප්‍රමුතා ලැයිතුව මතක ඇතැයි සිතමි. එය නැවත python ට අදාල වන පරිදි සකස්කර මෙසේ කියමු.
මුලින්ම වරහන් තුල ඇති සංඛ්‍යා සුළු කරන්න.
දෙවනුව ** සහිත සංඛ්‍ය සුළු කරන්න.
තෙවනුව පිළිවළින් * , \ සහ % සහිත සංක්‍යා සුළු කරන්න.
අවසානයට පිළිවලින් + සහ –සහිත සංඛ්‍යා සුළු කරන්න.

>>>(15 - 7)*23%3
1
>>>15 - 7*23%3
13
>>>

(15 –7)*23%3 යන ගණිත ගැටළුව python විසින් සුළු කරන ලද ආකාරය සිතා බලමු.
පලමුව වරහන් තුල ඇති සංඛ්‍යාව සුළු කළ යුතුයි. එවිට ,
8*23%3 යන සංක්‍යාව ලැබේ.
දැන් 8 සහ 23 ගුණ කළ යුතුය. එවිට,
184%3 යන සංක්‍යාව ලැබේ.
දැක් 184, 3න් බෙදුවිට ලැබෙන ඉතිර ගණන සෙවිය යුතුය. එවිට පිළිතුර ලෙස,
1 යන සංක්‍යාව ලැබේ.
මෙලෙසම 15 –7*23%3 යන ගණිත ගැටළුව විසඳන ආකාරයගැන සිතන්නනට උත්සාහ කරන්න. ඊලඟ කොටසේදී සැබෑලෙසම පරිගණක කේතයක් ලියන්නට උත්සහ කරමු. එවිට ඔබ විසින් ලියන ලද කේතයන වෙනත් ඕනෑම පරිගණකය ධවනය කීරීමට ඔබට හැකි වෙනු ඇත.


මෙම ලිපිය Dasun Weerasinghe විසින් ලියන ලද digit.lk වෙතින් උපුටා ගැණුනු ලිපියකි. 
digit.lk ලිපිය වෙත යාමට මෙතන ක්ලික් කරන්න.


පයිතන් යනු

පයිතන් යනු
පයිතන් යනු පරිගණක ක්‍රමලේඛ භාෂාවකි. මෙය දැනට ඇති ඉගෙනීමට පහසු ම හා පරිගණක ක්‍රමලේඛනයට අත්පොත් තබන්නන්ට තම මූලික අඩිතාලම සකසාගැනීමට යොදාගත හැකි බලවත් මෙන් ම භාවිතයට පහසු පරිගණක ක්‍රමලේඛ භාෂාවක් ලෙස වැඩිදුරටත් හඳුන්වාදිය හැකි ය. පයිතන් 90 දශකයේ මුල් භාගයේ, C භාෂාවේ පැවැති අඩුපාඩු ඉවත් කොට එයට වඩා උසස් වස්තු මූලික (Object Oriented) බවක් ලබාදීමට ගත් උත්සාහයක් පමණක් වූ නමුත්, එය නිදහස් මෘදුකාංගයක් ලෙස මහජනයා අතට පත්වීම හේතුවෙන් එහි නිර්මාපකයන්ගේ අරමුණු අභිබවා යමින්, බලවත් පරිගණක භාෂාවක් බවට පත් විය. අද දින ශ්‍රී ලාංකීය උසස්පෙළ විෂය නිර්දේශයට පවා ඇතුළත් ව ඇති මෙම භාෂාව පරිගණක ක්‍රමලේඛනයට පිවිසෙන ඕනෑම වයස් කාණ්ඩයක අයට උචිත භාෂාවක් ලෙස නිර්දේශ කරමු.
එපමණක් නොව ලොව තොරතුරු හා සන්නිවේදන තාක්ෂණය ආක්‍රමණය කළ සෑම ක්‍ෂේ‍ත්‍ර‍යකම පාහේ පයිතන් භාෂාව ද රැඳී සිටී. ලොව විශාලතම අන්තර්ජාලගත සේවා සපයන්නා වන ගූගල් සමාගම තම යාන්ත්‍රණය සඳහා බහුලව යොදාගන්නා භාෂාවකි පයිතන්. එපමණක් නොව ඇමරිකානු ජාතික අභ්‍යවකාශ ඒජන්සිය (NASA) පවා තම පරීක්ෂණ කටයුතු සඳහා මෙය යොදාගන්නා බැවින් ම මෙහි ඇති විශ්වසනීයත්වය හා බලය තහවුරු නොවන්නේ ද?

පයිතන් භාෂාවේ වාසි

නිදහස් හා විවෘත මෘදුකාංගයක් වීම

නිදහස් හා විවෘත මෘදුකාංගයක් වීමේ ප්‍රධානතම වාසිය වනුයේ කේත රචකයාට තමා ලියන කේතයේ පූර්ණ අයිතිය හිමි වීමයි. වාණිජ වැඩසටහන්කරණ මෘදුකාංග (උදා - Visual Basic, .net) වැනි මෘදුකාංග භාවිතයෙන් ලියූ වැඩසටහන්වල අයිතිය හිමිවන්නේ එම කේතය ලියූ පුද්ගලයාට නොව එම වැඩසටහන අයිති සමාගමට බව ඔබ දන්නවා ද?, එයින් ම ඒවා භාවිතයේ ඇති අවදානම ඔබට වැටහෙනු ඇත.
එපමණක් නොව මෙය විවෘත මෘදුකාංගයක් වීම එනම් කේතය නිදහස් වීම හේතුකොටගෙන ලොව නන්දෙස සිටින සංවර්ධකයන් අතින් ඉතා ශීඝ්‍රයෙන් මෙම භාෂාව දියුණු වීම නිසා වඩා නිවැරදි කේතයෙන් යුතු, වැඩිදියුණු කළ සංස්කරණ නිරන්තරයෙන් ලැබීමේ අවකාශ පවතී. එම නිසා වාණිජ මෘදුකාංග මෙන් වරදක් නිවැරදි කිරීමට හෝ නව සංස්කරණ ලබාගැනීමට අවුරුදු 5කට වඩා කාලයක් එම වැරදි සමග බලාසිටීමට සිදු නො වේ.

ප්‍රජා සහාය

මෙම භාෂාව වටා සංවර්ධකයන්, නිමැයුම් කරුවන්, සිසුන්, ගුරුවරුන් වැනි නා නා විධි පුද්ගලයන් මිලියන ගණනාවකින් සැදි ප්‍රජාවක් බිහිව ඇති නිසා පැනනගින ගැටලු නිරාකරණයට පමණක් නො ව යමෙකුට මුල සිට ඉගෙනීම සඳහා අපිරිමිත සහායක් ලැබිය හැකියි. (උදා : ලංකාවේ අධ්‍යාපනයට මෙය ඇතුළත් කිරීමට යෝජනා කිරීමටත් වසර කිහිපයකට පෙර මෙම ලිපියේ කර්තෘ පයිතන් භාෂාව හැදෑරීමට උපයෝගී කරගත්තේ ඒ වටා එක් වූ පුද්ගලයන් හා ඔවුන් අතින් ලියැවුණු ලේඛන යි). මෙයට වෙන්වූ සංවාද මණ්ඩපවල හා බුලටින් ෆෝරම්වල ඔබට නොමිලේ, අපිරිමිත දැනුමක් ලබාදීමට සැදී පැහැදී සිටින පුද්ගලයන් මිලියන ගණනක් හමුවීමට පුළුවන. එහෙයින් ලක්ෂ‍ ගණනින් මුදල් අය කරන පාඨමාලා හැදෑරීම අනවශ්‍යයි.

වේදිකාන්තර ගුණාංගය (Cross Platform)

මේ භාෂාවේ ප්‍රධානතම විශේෂාංගය වන්නේ මෙය යි. මෙහි දී ඔබ ලියන කේතය කිසිඳු වෙනස් කමකට ලක් නොකර ඕනෑම මෙහෙයුම් පද්ධතියක් මත ධාවනය කිරීමට පුළුවන. වින්ඩෝස්, ලිනක්ස්, මැකින්ටොශ් හා වෙනත් ඕනෑම මෙහෙයුම් පද්ධතියකට අප ලියන කේතය පොදු වෙයි. (write once, run anywhere), මෙහි වෙනස් කළ යුතුවන්නේ පයිතන් අඩිතාලම පමණකි. එය පයිතන් භාවිත කරන්නෙකුට කිසිදා කරදර වීමට අවැසි නොවන, භාෂා සංවර්ධකයන් අතින් කෙරෙන කාර්යයක් නිසාත්, දැනට ඇති ප්‍රධාන මෙහෙයුම් පද්ධති සියල්ලටම සකසා අවසන් නිසාත් එහි වාසිය පහසුවෙන් ලද හැකියි.

මිල

ඔව් ඔබ සිතුවා නිවැරදියි! මෙය www.python.org වෙතින් සම්පූර්ණයෙන් ම නොමිලේ ලබාදෙන අතර පසුව පැමිණෙන වැඩිදියුණු කිරීම් සියල්ල ද මුළුමනින් ම නොමිලේ සපයනු ලැබේ.

වැඩිදියුණු වීම හා භාවිතය

මෙම භාෂාව පෙර පැවසූ අයුරින් ම ප්‍රජාව අතින් සංවර්ධනය වන නිසාම පටු ක්ෂේත්‍රයන්හි නොනැවතී සිතාගත හැකි සෑම අංශයක් කරා ම පැතිරී ඇත. අතිවිශාල මොඩියුල ප්‍රමාණයක් හා ලයිබ්‍රරි ප්‍රමාණයක් පවතින නිසා පහසුවෙන් ඕනෑ ම කාර්යයකට උචිත ලෙස මෙමගින් කේත රචනා කළ හැකි ය (උදා : පරිගණක ක්‍රීඩා, ජාලගත භාවිත යෙදවුම් වැනි දෑ). තව ද මෙය අනෙකුත් භාෂා සමග ද සහයෝගී ව කටයුතු කරයි. විශේෂයෙන්ම C පාදක කරගත් භාෂාවන්ට සහාය දක්වන්නා සේ ම, සම්පූර්ණයෙන් ම වෙනස් වාණිජ භාෂා වන .net වේදිකාවට ද සහාය දක්වන බැවින්, කේත රචකයාට ඇති සීමා අඩු කරයි.

ලිවීම හා කියවීම

ඉංග්‍රීසි භාෂාවට බොහෝ සමාන අතිශය සරල කේතයක් මෙහි පවතින බැවින් ලිවීම මෙන් ම ලියූ කේතයක් කියවා තේරුම් ගැනීම ද ඉතා පහසු යි. මෙය වැඩසටහන්කරණයේ ඉතා වැදගත් මූලධර්මයකි.

මෙම ලිපිය http://sourceforge.net වෙතින් උපුටා ගැනුනු ලිපියකි. එම පිටුව වෙත යාමට මෙතන ක්ලික් කරන්න.