Tuesday, October 17, 2017

Python2 Lesson 1


Python Programming
.
Python မွာ Python2 နဲ႔ Python3 ဆိုျပီး မတူညီတာေလးေတြ ရွိပါတယ္။ Hello world! ကို print ထုတ္ရင္ေတာင္ Python 3 မွာက မတူတာရွိပါတယ္။ ဥပမာပံုေလးနဲ႔ ျပပါ့မယ္။

ပံုမွာၾကည့္ရင္ Python2 မွာသံုးတဲ့ print ပံုစံကို pyhon 3 မွာ သံုးလို႔ မရေပမယ့္ python 3 က print ပံုစံကိုေတာ့ Python2 မွာ သံုးလို႔ ရတာကိုေတြ႔ရပါတယ္။ ဒါေတြ ေနာက္ပိုင္းမွ ဆက္ေဆြးေႏြးရေအာင္ပါ။ ခုေတာ့ Python2 ေတြကိုပဲ နမူနာ သံုးျပသြားပါမယ္။
Python ေတြကို စမ္းသပ္ေရးႏိုင္ဖို႔အတြက္ Kali Linux မွာဆုိရင္ေတာ့ Python2 & 3 install ျပီးသား ျဖစ္ပါတယ္။ Terminal မွာ python လို႔ ရိုက္ေခၚလိုက္ရင္ python2 ကို အသံုးျပဳႏိုင္မွာျဖစ္ျပီး Terminal မွာ python3 လို႔ ရိုက္ေခၚလိုက္ရင္ေတာ့ Python3 ကို အသံုးျပဳႏိုင္မွာျဖစ္ပါတယ္။
Python အတြက္ idle application မွာ အသံုးျပဳခ်င္ရင္ေတာ့ Kali Linux မွာ
apt install idle
apt install idle3
ဆိုျပီးရိုက္သြင္းႏိုင္ပါတယ္။ idle is for Python2 & idle3 is for Python3 ပါ။
.
Windows မွာေတာ့ "ဒီေနရာကိုႏွိပ္ျပီးသြားေဒါင္းႏိုင္ပါတယ္"

               Python2 & 3 သက္ဆိုင္ရာအလိုက္ ေဒါင္းယူႏိုင္မွာျဖစ္ပါတယ္။ ျပီးရင္ေတာ့ စတင္သံုးလို႔ ရပါျပီ။
Windows မွာ idle သံုးခ်င္ရင္ေတာ့ Python တင္စဥ္ကတည္းက idle က ပါျပီးျဖစ္ပါတယ္။ Python 2 တင္ျပီးျပီဆိုရင္ေတာ့ C:\Python27\Lib\idlelib\idle.bat ဖိုင္ကို ဖြင့္လိုက္ရံုပါပဲ။ Shortcut ထုတ္ထားျပီး Desktop ေပၚ တင္ထားရင္ေတာ့ ေနာက္ အလြယ္တကူ ဖြင့္ႏိုင္တာေပါ့

ဒါကေတာ့ Windows မွာ ျမင္ေတြ႕ရမယ့္ IDLE နဲ႔ python2 ကို ယွဥ္တြဲ ျပထားတာပါ
.

Python2 ႏွင့္ IDLE ကို Kali Linux မွာ ယွဥ္တြဲျပထားတာပါ
.
ဒီႏွစ္ခုလံုးရွိမွ သံုးလို႔ရတယ္လို႔ မေျပာဘူးေနာ္။ (Windows မွာေတာ့ ႏွစ္ခုလံုး တစ္ျပိဳင္နက္တည္း ပါပါတယ္) Kali Linux မွာေတာ့  command line မွာေတာ့ Build in အေနနဲ႔ အသံုးျပဳႏိုင္ျပီး IDLE  သံုးခ်င္ရင္install ဖို႔ လိုအပ္ပါတယ္
နည္းနည္း ရွည္လ်ားသြားျပီ။ ဒီေန႔ သင္ခန္းစာေလး နည္းနည္း ေပးခဲ့မယ္။ ေလ့လာၾကည့္ႏိုင္ေအာင္ေပါ့
.
Maths ဆိုင္ရာ သင္ခန္းစာမ်ား
....
ေခါင္းစဥ္ ေတြ့လိုက္လို့ လန့္သြားမွာလည္း ေျကာက္ရေသးတယ္ :)😁😁
ေက်ာင္းမွာေတာင္ သခ်ၤာေတြ မတြက္ခ်င္လို့ ဂုဏ္ထူးရေအာင္ မလုပ္ခဲ့တာ ခုမွ လုပ္ရျပီဆိုျပီး မေတြးပါနဲ့ေနာ္ 😅😅
Python မွာ သခ်ၤာေတြ တြက္ရတာ Calculator နဲ့ တြက္ရသလို လြယ္ကူပါတယ္
.
ေပါင္း +
နုတ္ -
ေျမွာက္ *
စား / ဆိုတဲ့ သေကဿငတေတြ သံုးျပီး တြက္ရတာ လြယ္ပါတယ္။
ပံုမွန္ အေပါင္းအနုတ္အတြက္ေတာ့ python ထဲမွာ
1+1
2+3
 စသည္ျဖင့္ ေရးျပီး enter လိုက္ရံုနဲ့ အေျဖပါ ပူးတြဲေတြ့ျမင္ရမွာျဖစ္ပါတယ္။
အနုတ္ အေျမွာက္ စတာေတြလည္း ထို့အတူပါပဲ
5-2
6*3
စသည္ျဖင့္ လိုရာကို တိုက္ရိုက္တြက္နိုင္ပါတယ္။
နည္းနည္းေလး အခက္အခဲရွိလာတာက အစား ပါ  (အစားအစာ စားတာကို မေျပာဘူးေနာ္ 😇😇😇 )
10/2
Enter လိုက္ရင္ အေျဖက ရွင္းပါတယ္။ 5 ေပါ့။ စားလို့ ျပတ္တာကိုး။ 11/2 လို့ ေရးျပီး enter ျကည့္ပါဦး။
5 ပဲ။ ဒါဆို အေျဖမွားေနျပီလား။ ဒဿသမ ကိန္းေတြ ဘာလို့မပါလဲ။ ပါေစခ်င္ရင္ လြယ္ပါတယ္။ တည္ကိန္းမွာျဖစ္ေစ စားကိန္းမွာျဖစ္ေစ
.0 ဒါမွမဟုတ္ . ကို ထည့္သြင္းလိုက္ရံုပါပဲ။ ဥပမာ - 11.0/2 ဒါမွမဟုတ္ 11./2 ဒါမွမဟုတ္ 11/2.0 ဒါမွမဟုတ္ 11/2. ဆို ရပါျပီ။ ေလးမ်ိုးလံုး စမ္းျကည့္လိုက္ေနာ္။
.
ဟုတ္ျပီ စားတာေတြ ရျပီ လို့ မထင္ပါနဲ့ဦး။  အစားက အေတာ္ကို ရွုပ္သဗ်။ 10 ကိုတည္ျပီး 3 နဲ့ စားျကည့္။
10/3 ဒီလိုေရးရင္ 3 ပဲ ရမယ္ သိျပီးျပီ။
ခုနေျပာတဲ့နည္းေတြနဲ့ စားျကည့္ရေအာင္ (နည္းေတြထဲက တစ္ခုခုေပါ့)
10.0/3
ေဟာ ေတြ့ပါျပီ။ 3.3333333333333335 အေျဖရျပီ။ ကိန္းတန္းက အရွည္ျကီးပဲ။ ရွည္မွာေပါ့ တစ္သက္လံုးထိုင္တြက္လည္း ျပီးမွာမွ မဟုတ္တာ။
ဒီလို ေရးျပီး enter ျကည့္ရေအာင္။
round (10./3,2)
enter ျကည့္။ Decimal ၂ေနရာပဲ ယူျပီး အေျဖထုတ္ေပးတာ ေတြ့လိမ့္မယ္။
round နဲ့ (...) ျကား space ျခားရပါတယ္။ ေနာက္မွာ ကပ္လ်က္ comma two (,2) ထည့္လိုက္တာက ဒသမ ၂ေနရာယူမယ္လို့ ေျပာတာပါ။
ဒါေလာက္ဆို သေဘာေပါက္ေလာက္ပါျပီ။ အစား ကို ထားခဲ့လို့ ရျပီ        လို့ မထင္ပါနဲ့ဦး။
(ေတာ္ေတာ္လည္း ရွုပ္တဲ့ အစားပါလားေနာ္  😋😋😋 )
.
ရွုပ္ဆို အေပါင္း အနုတ္ အေျမွာက္ေတြလို အေျဖတစ္ခုပဲ ရွိတာမဟုတ္ဘဲ တည္ကိန္း စားကိန္းအျပင္ စားလဒ္နဲ့ အျကြင္းပါ ပါေနတာကိုး။
10/3 ဆိုပါေတာ့ 3 x 3 = 9 ဆိုေတာ့1 ျကြင္းတာေပါ့။ အဲသည္ အျကြင္း ကို တြက္ခ်က္ရာမွာ ထည့္သြင္းတြက္ခ်င္ရင္ေတာ့
% ကို / ေနရာမွာ ထည့္သြင္းအသံုးျပုရပါမယ္။ ဥပမာ -
10%3
13%6
စသည္ျဖင့္ေပါ့။  အစားအေျကာင္းေတာ့ ေတာ္ေလာက္ပါျပီ။
ပါဝါေတြအေျကာင္း ဆက္ရေအာင္ပါ။
..
Power Exponent အေျကာင္းေလးဆက္ ရေအာင္။
သင့္လက္ထဲမွာ calculator တစ္လံုး ကိုင္ ထားတယ္ဆိုပါေတာ့။
5 သံုးထပ္ ကို လိုခ်င္ရင္ သင္ ဘာလုပ္မလဲ။
5*5*5 လို့ တြက္မွာေပါ့။ အဲသလိုပဲ Python မွာလည္း 5*5*5 enter လိုက္တာနဲ့ အေျဖ ရမွာပါ။
ေကာင္းျပီ 5 ဆယ္ထပ္ ဆိုပါစို့။ Calculator မွာ ဆယ္ခါ ေျမွာက္ရေတာ့မယ္။ Python မွာလည္း ဆယ္ခါ ေျမွာက္ရေတာ့မယ္။
နည္းနည္းေတာ့ စိတ္ညစ္စရာ ေကာင္းသြားျပီ။ ဒါဆို 5 အထပ္ 50 ေျမွာက္မယ္ဆိုပါစို့။
???????????????
Python မွာကေတာ့ ဒီနည္းကို အလြယ္ကေလးပဲ ေျဖရွင္းေပးနိုင္ပါျပီ။
ကဲ 5 အထပ္၅၀ လိုခ်င္ျပီ ဆိုပါစို့။
5**50 enter လိုက္တာနဲ့ ရပါျပီ။
2**10 ဆိုရင္ေတာ့ ၂ ဆယ္ခါ ေျမွာက္လို့ရတဲ့ ဆယ္ထပ္ အေျဖကို ေပးပါလိမ့္မယ္။
OK, ဒီေနရာမွာ မွတ္ရမွာက ေရွ့က တည္ကိန္း ** အေျမွာက္သေကဿငတ ၂ခုပ္ထပ္တာက ထပ္ကိန္းဆိုတဲ့ အဓိပဿပါယ္
ေနာက္က ကိန္းကဏန္းက ဘယ္နွထပ္ဆိုတာကို ျပတယ္
ဒီေလာက္ဆို က်န္တဲ့ ကိန္းေတြကို တြက္ထုတ္လို့ ရေလာက္ျပီ ထင္ပါတယ္။
.
အေပာ္က အပိုင္းေလးေတြမွာ ေပါ့ေပါ့ပါးပါး ေက်ာ္ျဖတ္လာခဲ့တယ္လို့ ယူဆပါတယ္။
ဒီတစ္ခါ နည္းနည္း ပိုျပီး အာရံုစိုက္ရမွာေလးေတြကို ေျပာပါ့မယ္္။
Variables ေလးေတြ တည္ေဆာက္ အသံုးျပုဖို့ပါ။
Variable ဆိုတာ အရပ္စကားနဲ့ အလြယ္ဆံုး ေျပာျပရရင္ သိုေလွာင္ကန္ေလးေတြလို့ ဆိုလို့ရပါတယ္။
ဥပမာေလး ေပးရေအာင္
x=4
y=6
ဆိုျပီး python မွာ ေရးျကည့္ပါ။ တစ္ေျကာင္းျပီးရင္ enter ဖို့ မေမ့ပါနဲ့ေနာ္။
x ကို ၄ yကို ၆လို့ သတ္မွတ္ျပီးျပီမို့ တြက္ျကည့္ျကမယ္။ ေနာက္တစ္ေျကာင္းမွာ
x=y ရိုက္ျပီး enter ျကည့္ပါ။ အေျဖ ၁၀ ထြက္လာပါမယ္။
ေနာက္တစ္ေျကာင္း အေနနဲ့
x*2
x*y
x**2
x**y
စတာေတြကို ရိုက္ျကည့္ပါ
x*2 မွာ 4*2=8 ဆိုတဲ့အေျဖကို ေပးပါလိမ့္မယ္။
x*y မွာေတာ့ 4 ေျခာက္လီ မို့ 24 ရမွာပါ။
x**2 မွာေတာ့ x ၂ထပ္မို့ ေလးေလးလီ 16 ရမွာပါ။
x**y ေနရာမွာ သူတို့ရဲ့ တန္ဖိုးေတြကို ထည့္သြင္းျကည့္ရင္ 4**6 မို့ ေလး ေျခာက္ထပ္
ေလး ေျခာက္ခါ ေျမွာက္တ့ဲ အေျဖ ရပါမယ္။
ဒီေလာက္ဆို သေဘာေပါက္ေလာက္ျပီထင္ပါတယ္။
ကြန္ပ်ူတာက x=4 နဲ့ y=6 လို့ အေပာ္မွာ ေပးခဲ့တဲ့ တန္ဖိုးေတြကို ပံုေသ မွတ္သားထားပါတယ္။ ေအာက္က ေဖာ္ျမူလာေတြထဲမွာ မူလ တန္ဖိုးေတြ
(သူ မွတ္ထားတဲ့ တန္ဖိုးေတြ) ကိုထည့္သြင္း တြက္ခ်က္သြားတာပါ။ ပထမဆံုးအေနနဲ့ x နဲ့ y တို့ရဲ့ တန္ဖိုးကို သိုေလွာင္ထားျခင္းက variable ရဲ့
အဓိက သေဘာတရားပါ။ variable ကို ကိန္းဂဏန္းေတြအတြက္သာမက စာသားေတြအေနနဲ့လည္း ထည့္သြင္း တြက္ခ်က္နိုင္တာေျကာင့္
variableရဲ့ အေရးပါမွုက အလြန္အေရးျကီးတဲ့ ေနရာမွာ ရွိပါတယ္။

.
အထက္မွာ ေဖာ္ျပခဲ့တာေတြက variable ကို ကိန္းေတြအေနနဲ့သာ ျပခဲ့တာပါ။ စာသားနဲ့ ေဖာ္ျပတဲ့အခါ "..." သေကဿငတကို အသံုးျပုနိုင္ပါတယ္။
Assignment Operator လို့ ေခာ္ပါတယ္။ နမူနာေလး ျကည့္ရေအာင္
python ထဲမွာပဲ စမ္းသပ္ျကည့္ပါ။
...
name= "KMN"
name = 'KMN'
အထက္ပါပံုစံ ၂မ်ိုးလံုး အသံုးျပုလို့ရပါတယ္။ အထက္ပါအတိုင္း variable တည္ေဆာက္ပါက ကြန္ပ်ူတာက name ကို မွတ္ထားမွာျဖစ္ပါတယ္္။
ေအာက္မွာ +-*/ ေတြ တြက္ေနျကည့္ပါ။ အေတာ္ျကာမွ  name လို့ရိုက္ျပီး enter ျကည့္ပါ။ ခုန မွတ္ထားခဲ့တဲ့ name ျပန္က်လာပါလိမ့္မယ္။
ဒါက variables ေတြရဲ့ အလုပ္လုပ္ပံုပါပဲ။
variables တည္ေဆာက္ရာမွာ သတိျပုရန္
variables ေတြကို သတ္မွတ္ရာမွာ ေရွ့မွာ ကိန္းေတြထည့္ျပီး မလုပ္ရ
e.g.
2x=4 လို့ မသတ္မွတ္ရ
x=4 , x=2 ဟုသာ သတ္မွတ္ရမည္
7name ဟု မသတ္မွတ္ရ
name = ဟုသာ သတ္မွတ္ရမည္။
Variables  ေတြရဲ့ ေနာက္မွာေတာ့ ကိန္းဂဏန္း ထည့္သြင္းသတ္မွတ္နိုင္ပါသည္။
e.g.
name1= 'Ko Ko'
name2= 'Mg Mg'
name3= 'Aung Aung'
hacker1= 'Zaw Zaw'
စသည္ျဖင့္ေပါ့။
!@#$%^&*(),. စတဲ့ သေကဿဿငတေတြကို ဿဿဿvariable မွာ ထည့္မသံုးရပါ။ ဥပမာ - name#, name@ , စသည္ျဖင့္ လံုးဝ မသံုးရ။
ဒီေလာက္ဆိုရင္ေတာ့ သေဘာေပါက္မယ္လို့ ယူဆပါတယ္။
ဆက္ျကဦးစို့ဗ်ာ။
.
User Inupt Function in Variables

User Input Function ဆိုတာကေတာ့ user ကို ျဖည့္သြင္းသတ္မွတ္ခိုင္းတဲ့ variables မ်ိုးပါပဲ။
python မွာပဲ ရိုက္မယ္ေနာ္ :)
.....
x = input("Enter your first number.")
.......
အထက္ပါ စာေျကာင္းကို ေရးျပီး enter တဲ့အခါ  Enteryour first number. ဆိုျပီး စာေပာ္လာပါမယ္။ ကိန္းဂဏန္း တစ္ခုခု
ထည့္ျကည့္ပါ။ ျပီးရင္ enter ေပါ့။
ဒုတိယ စာေျကာင္း
....
y = input("Enter your second number.")
.....
 ဆက္ရိုက္ျပီးတဲ့အခါ ဒုတိယကိန္းကို ျဖည့္ျပီး enter လိုက္ပါ။
ေအာက္မွာ
x+y
x-y
x*y
x/y
x**y
x+2
စသည္ျဖင့္ တြက္ခ်က္မွုေတြ လုပ္နိုင္ပါျပီ။ ဒီအခ်က္ကေလး နွစ္ခုကို အေျခခံျပီး အမ်ားျကီး ထပ္လုပ္ျကည့္နိုင္ပါတယ္။
..
Lesson 2 (coming soon)


ဒီ Website မွာ တင္ထားတဲ့ အေၾကာင္းအရာေတြကို Menu အလိုက္ ၾကည့္ရႈႏိုင္ရန္အတြက္ ဒီေနရာကို ႏွိပ္ျပီး သြားေရာက္ ေရြးခ်ယ္ႏိုင္ပါတယ္ခင္ဗ်ာ

.
အားလံုး အဆင္ေျပၾကပါေစ

Khit Minnyo

2 comments:

  1. Python2 lesson 2
    တင္​​ေပးပါ

    ReplyDelete
    Replies
    1. ေန႔စဥ္ တင္ေပးႏိုင္ဖို႔ ႀကိဳးစားသြားမွာပါခင္ဗ်

      Delete