Friday, March 8, 2013

functions in python

function එකක් කියන්නේ මොකක්ද?
 function එකක් ඇතුලේ තිබෙන්නේත් සාමාන්‍ය python code ම තමයි.නමුත් අපි එක දිගටම program එක ලියාගෙන ගියොත් එක බලන වෙන කෙනෙකුට එක මහා අවුල් ජාලයක්.අපි කුඩා කුඩා වැඩ වලට කුඩා කුඩා function ලියාගෙන ගිහින් එක අවශ්‍ය වෙලාවට එකට call කරනවානම් අනිත් අයට එක තේරුම් ගන්න ඉතාම පහසුයි.
function භාවිතයේ තියෙන අනිත් වැදගත්ම ප්‍රයෝජනය තමයි එකම function එක නැවත නැවත use කරන්න පුළුවන් වීම.උදාහරණයකට අපි හිතමු අපි අංක දෙකක් එකතු කරන්න function එකක් ලිව්වා කියල, අපිට අංක දෙකක් එකතු කරන්න ඕනේ වෙන හැම වෙලාවකම අපිට අර function එක යොදාගන්න පුළුවන්.ඉස්සර වගේ එකතු කරන හෙම වෙලාවේම එකතු කිරීමී command එක ලියන්න ඕනේ නැහැ.
මේ  වගේ නැවත නැවත use කරන්න පුළුවන් function විශාල ප්‍රමාණයක් python සමග ලැබෙනවා.අපිට අවශ්‍ය function එකක් හදාගන්න පුළුවන්.අපි මීට කලින් use කරපු type,int,float වගේ ඒවා python සමග ලැබෙන function.
සමහර python සමග ලැබෙන function නිකන්ම භාවිතා කරන්න බැහැ.ඒවා ඉම්පෝර්ට් කරගන්න ඕනේ.math කියන්නේ ඒ වගේ ඉම්පෝර්ට් කරගන්න ඕනේ function සෙට් එකක්.මේවගේ function සෙට් එකකට අපි module කියල කියනවා.මේ වගේ python සමග ලැබෙන module ගෙන ඉදිරියේදී සාකච්චා කරන්න බලා පොරොත්තු වෙනවා.අපි දැන් කරන්න හදන්නේ අපිට ඕනේ කරන function එකක් හදාගන්න හැටි බලන්න.
function එකක සාමාන්‍ය structure එක පහත දක්වා තිබෙනවා.

def function_name (arguments):
        #your code type here

python වලදී function  එක හදුනා ගන්නේ tab මගින් වන අතර මෙහි තබා ඇති ටැබ් එක ඉවර වන තුරු function එක ලෙස සැළකේ.

අපි දැන් බලමු function  එකක කොටස් මොනවද කියල.
def-මෙය සැම function  එකක් මුලදීම යෙදිය යුතුයි.python විසින් function  එකක් හදුනා ගන්නේ මෙමෙ key word එක මගින්.
function name-function name එකට අපට සුදුසු නමක් use කරන්න පුළුවන්.හැබැයි සමහර words නම් use කරන්න බැහැ.උදාහරණයක් විදියට python වල තියෙන කිසිම key word එකක් function  name එක විදියට use කරන්න බැහැ.ඒ වගේම function  name එකේ space තියෙන්නත් බෑ.
arguments කියන්නේ function එක රන්  වෙන්න ලබා දිය යුතු දත්තයි.ඔබ විසින් function  එකට call කරන විට මෙය ලබා දිය යුතු වනවා.argumants අපි ලබා දෙන්නේ වරහන් ඇතුලෙයි.
උදා-ඔබ අංක දෙකක් එකතු කරන්න function  එකක් ලියනවා කියල හිතන්න.එතකොට ඔබ එකතු කල යුතු අංක දෙක arguments විදියට ලබාදිය හැකියි.
සමහර function  වලට argumants අවශ්‍ය නැහැ.print_hello කියන්න ඒ වගේ function  එකක්.
body-මේ තුල function  එක තුලින් සිදු විය යුතු සියල්ල සඳහන් වනවා.
අපි මේ function  දෙක රන් කරල් බලමු.
අපි මේකට කියන්නේ function call කියල .ඒ කියන්නේ  function  එකකට call කරනවට.මෙහිදී  function name එක ඉදිරියෙන් වරහන් ඇතුලේ arguments ටික ලබාදිය යුතු වනවා.
මෙහි print_hello function එකට arguments නැති නිසා වරහන් තුල හිස්ව තැබිය යුතු වනවා.
පේලි කිහිපයකින් යුතු  function එකක් තමයි පහත දකින්නට ලැබෙන්නේ.
 function එකකට call කලාම එම කතා කල තැනට අගයක් return කරන්න  function එකකට පුළුවන්.
අපි කලින් උදාහරණයම ගමුකො.අංක දෙක  function යවපුවම එම අංක දෙකේ එකතුව print කිරීමනේ කලින් කලේ.නමුත් අපිට පුළුවන් එකතුව අපි  function එකට call කරන තැනට ලබා දෙන්න එතකොට එම පිළිතුර යොදාගෙන ඕනේ දෙයක් කරන්න call කරන  function එකට ලැබෙනවා.ඒ වගේම එක  function එකකට call කරලා ලැබෙන පිළිතුර  function එකක අර්ගුමෙන්ට් එකක් හැටියට යොදාගන්න පුළුවන්කමත් ලැබෙනවා.
පහත තිබෙන්නේ ඒ වගේ   function එකක් .මේක කලින් codes  වගේ interpreter එකේ වෙනුවට 
file->new window වලින් අලුත් file එකක් අරගෙන එකතුල.මේ විදියට code කරන කරන code save කරලා තියන්න පුළුවන්.මේ ගෙන මම කලින් post එකක කියල තියෙනවා.
http://pythonsinhalen.blogspot.com/2012/09/how-to-use-python-command-line-and-idle.html
මේ ලින්ක් එකෙන් ඒ post එක බලාගන්න පුළුවන්.

පහත දැක්වෙන්නේ return type සහිත function දෙකක් සහ එයට විවිද ආකාරයෙන් call කලහෙකි ආකායන්.
මෙහි අවසාන පේලිය ගැන විස්තර කලොත් add_ten function එකට c යැවීමෙන් ලැබෙන පිළිතුර add_five function එකට යවනු ලැබේ.එයින් ලැබෙන පිළිතුර print කරනු ලැබේ.මෙය run-> run module මගින් run කරන්න පුළුවන්.එවිට ලැබෙන පිළිතුර පහත දැක්වේ.
මම මේ ගෙන වැඩියේ විස්තර කරන්නේ නැහැ.මම හිතනවා ඔබට මෙය සරලව තේරුම් ගන්න පුළුවන් වෙයි කියල.පහත දක්වෙන්න්නේ method කීපයකින් හදපු සරල calculator එකක code එකක්.
 
අපි දැන් මේක රන් කරලා බලමු.


1 comment: