100 days with Python(Day:1-Day:10)


Day-1


Python စေလလာမယ္ဆုိေတာ့ ျပင္ဆင္ရတာေပါ႔ ။ Laptop ေလး အိပ္ထဲထဲ့ၿပီ: ၈မုိင္ကကုိရာဗီရဲ႕ ရံုးခန္:ကုိေျပ:ရတာေပါ႔။
ဟုိေ၇ာက္ေတာ့ Internet က documentation ေလးဖတ္ၿပီး ဘယ္လုိ.လုပ္ရမလဲ ဘာညာၾကည္။ Download ဆြဲၿပီး install လုပ္ေပါ႔။

Programming Language တစ္ခုကုိစတင္ၿပီး ေလ့လာေတာ့မယ္ဆုိေတာ့ စရတာက Hello World ေပါ႔။ Python ကုိဘာလုိ. စၿပီး စိတ္ဝင္စားသလဲဆုိေတာ့ စကၤာပူမွာေနတုန္းက အားရင္ Internet မွာ MIT က Course ၾကည္ျဖစ္ပါတယ္။ Python ကုိစၿပီး သင္ေပးပါတယ္ Lecturer မ်ားကလဲ ေတာ္ေတာ္ေကာင္းပါတယ္။ ေက်ာင္းသားမ်ားကလဲ Mac ေလးကုိစိနဲ႔ ေအာ္စလာပီ Mac ေရာဂါ :P
Python
Print “hello world”
အဲဒီေတာ့ ကုိရာဗီက ေျပာပါတယ္ မင္:program ကေရးရတာမ်ားတယ္ ဆုိၿပီးရုိက္ျပပါတယ္။
“hello world”
Result က ‘Hello World’ တန္:ရပါတယ္။
Python ရဲ႕အားသာခ်က္က input တစ္ခုက string/char/integer ျဖစ္ေၾကာင္းအလုိလုိသိတာပါပဲ ။ ကႊၽန္ေတာ္ေလ့လာဘူးတဲ့ တျခားProgramming Language ေတြနဲ႔ တုိက္ၾကည္.ပါတယ္။
C++ ဆုိရင္
include int main(){
cout"Hello World";
}
.Net ဆုိရင္
using System;
class MainApp {
public static void Main() {
Console.WriteLine("Hello World ");
}
}
Java ဆုိရင္
class HelloWorldApp { 
public static void main(String[] args) {
System.out.println("Hello World!"); }
}
ဒီေနရာမွာေျပာခ်င္တာက Programming Language ၁ခုဟာ တုိလုိ.ေကာင္းတယ္ ေျပာခ်င္တာမဟုတ္ပါဘူး။ ဘယ္ဟာက ပုိေကာင္းတယ္ ေျပာတာမဟုတ္ဘူးေနာ္။ ေပးခ်င္တဲ့ မတ္စိ(Message) ကုိ Python နဲ႔ လြယ္လြယ္ကူကူနဲ႔ ေပးလုိ.ရတယ္လုိ. ဆုိလုိခ်င္တာပါ။ဒီလုိ.ေကာင္းမြန္တဲ့ Language ၁ခုကုိ Course မွာပါသင့္တယ ္ထင္တာပဲ။ အျပစ္တင္တာမဟုတ္ပါဘူး ပုိေကာင္းမယ္လုိ. ေျပာတာပါ။ ကႊၽန္ေတာ္ မဟာတန္:မွာ VB.net/ VS2003 + MS Access နဲ႔ သင္ရပါတယ္။
ေက်ာင္းမွာက C++ ကုိသင္ပါတယ္။ ေရးရတာေတာ္ေတာ္မ်ားပါတယ္ “ include/ a standard header” ေကာ method ေကာ “cout” ေကာ႐ႈပ္ေနတာပဲ ။ ေက်ာင္းသားက iostream, cout,cin, void main() ေတြ ေတြ.ၿပီးလန္႔သြားၾကလာ: မသိပါဘူး။ အေပါင္း+အႏုတ္+အျမာက္+အစား ဆုိရင္ေကာ variable (eg.int a,b;) ေၾကညာရပါမယ္ ၿပီးေတာ့ at least : method, cout ကေလးေတြလန္႔မယ္ဆုိလဲ လန္႔စရာပါပဲ။ Paper ေပၚမွာကုဒ္ေရးၿပီး နားမလယ္ၾကေတာ့ Exam မွာအလြတ္က်က္ၿပီးေျဖၾကတာေပါ႔။ :D
အေပါင္း+အႏုတ္+အျမာက္+အစား ကုိPyton မွာ လြယ္လြယ္ကူကူဖန္တီး လုိ.ရပါတယ္။
>>1+2
>>2-1
>>2*3
>>6/3
Word/စကားလံုး တစ္ခုကုိ Sentence တစ္ခုကေန Count လုပ္မယ္ဆုိပါေတာ့။
'kochit kotun koravi kongwetun koarkar kotunzarnikyaw wayne shaung neo pyone '.count ('n') 
ဒါပါပဲ အေျဖက ၉ ရပါတယ္ ။
.count ('n') 
character 'n' ကုိစစ္တာပါ။ ဘယ္နလံုးပါလဲလုိ.။ဘာပဲေျပာေျပာ Day-1 မွာ ေတာ္ေတာ္ေၾကနပ္သြားပါတယ္ ။ စမ္းျဖစ္တာ က်န္ပါေသးတယ္ ေရးရတာပ်င္းလာလုိ. :P။ ဆက္ၿပီးေရ:ပါဦးမယ္……………


Day-2
Day-2 မွာ User နဲ႔ interact လုပ္တဲ့ program ေလးမ်ား စမ္းမိပါတယ္
word1= “Hello,”
word2=”Good day”
word3=”to you ”
print word1+” ”+word2+” ”+word3
Output: “ Hello Good Day to you” ရပါတယ္။ တျခားနည္းနဲ႔လဲလုပ္လုိ. ရပါတယ္
word1= “Hello,”
word2=”Good day”
word3=”to you ”
sentence=word1+” ”+word2+” ”+word3
print sentence
Output: Hello Good Day to you ပ ဲျပန္ရပါတယ္။ Same result ပါ။

Looping ေလး လုပ္ၾကည္.ရေအာင္
While
Screen Design ေလး အရင္ဆြဲၾကည္.ရေအာင္
Step-1 int တစ္ခုကုိ assign လုပ္ပါမယ္ #သူအတြက္ value ထဲ့ပါမယ္။
Step-2 ဘယ္အထိ အလုပ္လုပ္ရမယ္ဆုိတာ သက္မွတ္ပါမယ္။ #while < (less than)
Step-3 int ျဖစ္တဲ့အတြက္ တုိးျခင္း ႏုပ္ ျခင္း စသျဖင့္ သက္မွတ္ႏူိင္ပါတယ္။
Step-4 output result ထုတ္ပါမယ္။
ဲအေျဖက 1 2 3 4 5 ရပါတယ္။ ဒီမွာ Python ရဲ႕အားသာခ်က္ပါ i=0 လုပ္လုိက္တာနဲ႔ i ဆုိတာ integer မွန္း အလုိလုိသိတာပါပဲ။


ေျပာင္:ျပန္ေကာ(minus)?


အေျမာက္ေကာ?


အစာ:ဗ်ာ


တမ်ဳိ:ေလးလုပ္ၾကည္ရေအာင္ အေပါင္း၊အႏုတ္၊အျမာက္၊အစား နဲ႔ ပ်င္းလာပီဗ်ာ…….
0 ကေန 20 ၾကား even number မ်ားကုိ ထုတ္ၾကည.္ရေအာင္
ထံုးစံအတုိင္း Screen Design ေလး လုပ္ၾကည္.ရေအာင္
Step-1:  integer i က ုိassign လုပ္ျခင္:
Step-2: Range သက္မွတ္ျခင္: #Example: 0-20
Step-3: integer i က ုိ္တုိးသြားျခင္: #Example: +1,+2,+3,…
Step-4: even number သာလုိအပ္ေၾကာင္း if statement နင့္filter လုပ္ျခင္: # if i%2==0
Step-5: integer i အား output ထုတ္ျပျခင္:

Day-2 ကေတာ့ဒီေလာက္ပါပဲ...
ဆက္ၿပီးေရးပါဦးမယ္....

Day-3 ဒီတခါ if (statement) ကုိစမ္:ၾကည္.ရေအာင္ ။ System ရဲ႕တုိင္မာ ေလးကုိသံုးမယ္ဗ်ာ
import time
now= time.localtime()
လုိတာဒီ ၂ေၾကာင္းပါပဲ ။ေလာေလာဆယ္ Time ကုိဆြဲထုတ္ရဖုိေတာ့လုိမွာေပါ႔ေနာ္ ။ Python မွာေကာင္းတာေလးမ်ား ရွိပါတယ္ ။ time ၿပီးေတာ့ “.” ခ်လုိက္ရင္ သံုးလုိ ရတာေလးမ်ား ျပပါတယ္။

hour ဆုိတဲ့ variable ေၾကညာမယ္ဗ်ာ။ ၿပီးေတာ ့သူ.အထဲကုိ အခုေ၇ာက္ေနတဲ့ Time(hour ) ထဲ့ လုိက္မယ္ဗ်ာ ။
hour= now.tm_hour
လြယ္ပါတယ္ေနာ္။ So Easy ပါ။

ဒီပံုေလးက လူ၁ေယာက္ရဲ႕ တစ္ေန႔တာ လုပ္ေလ့ရွိတာက ုိျပတယ္ဗ်။

Screen design က
- ၁၂နာရီကေန မနက္ ၈နာရီအထိအိပ္မယ္ဗ်ာ
- ၈နာရီက ၉နာရီကရံုးသြားဖုိ ဘတ္စ္ကားစီး
- ၉နာရီက ၅နာရီက အလုပ္လုပ္မယ္ဗ်ာ
- ၅နာရီက ၆နာရီကုိ ဘတ္စ္ကားစီး
- ၆နာရီက ၈နာရီကုိ ထမင္:စားျပင္ဆင္
- ၈နာရီက ၁၂နာရီကုိ ရုပ္ရွင္ေလးဘာေလး ၾကည္.ေပါ႔ဗ်ာ
လုပ္ခ်င္တာက system ကေနလက္ရွိ Time ကုိဆြဲထုတ္မယ္ၿပီးရင္ ဒီ time ဆုိဘာလုပ္မလဲ ဆံုးျဖတ္မယ္။ အဲလုိ အဲလုိ

Connection ကမေကာင္:တဲ့ၾကားကျဖစ္ညစ္ၿပီးတင္လုိက္တာပါ That is all for today။ ၾကာရင္ Teleport ကုိ သြားၿပီး၁ခုခုလုပ္မိမွာစုိးလုိ. :(


Day-4
ဒီေန႔လဲ Connection မေကာင္းပါ ။ ထားပါေတာ့ စိတ္ေလွ်ာ့ၿပီး က ုိတက္ႏူိင္သလုိ တင္လုိက္ပါတယ္။ ဒီတစ္ခါ User နဲ႔ interact လုပ္မယ့္ Program ေလးစမ္းၾကည္. ရေအာင္ဗ်ာ

name= raw_input("What is your name: ")
print "Hello"+" "+name
ဒီ program ကုိ run ရင္ ခနပဲျမင္ရမယ္ဗ် ။ ဘာျဖစ္လုိ.လဲဆုိေတာ ့ program run ပီးရင္ Auto ပိတ္သြားလိပ္မယ္ ဗ်။
အဲဒီလုိ မျဖစ္ဖုိ. တားဖုိ လုိတယ္ဗ်။ Program ကုိ ခန အိပ္ခုိင္:လုိက္ဗ်ာ။ ဒီလုိဒီလုိ
sleep(5) 
Import လုပ္ေပးရမယ္ဗ် Time ေအာက္က Sleep ကုိ
from time import sleep

Program ကုိ notepad သုိ.မဟုတ္ notepad++ မွာရုိက္ၿပီး “.py” extension နဲ႔သိမ္းပါ။


အေရးႀကီးတာသိထားဖုိ လဲလုိေသးတယ္ Wiki က reference လုပ္ထားတဲ့ Chart .
Variable မ်ားကုိ assign လုပ္ရင္ သိထားရမယ့္ Chart ပါ။



အေပါင္း၊အႏုတ္၊အျမာက္၊အစား ပဲျပန္သြားရေအာင္ ။ ဒါေပမယ့္ တစ္ဆင့္တက္ၿပီး Function ေလးမ်ား သံုးၾကည္ရေအာင္ ။ User ကုိ input ေတာင္:မယ္ choice (ဘာလုပ္ခ်င္လဲ) ေတာင္းမယ္ အဲဒီေပၚမႈတည္ၿပီး output ကုိ ထုတ္ေပးမယ္ဗ်ာ။ Screen Design ေလးၾကည္.ရင္ ပုိရွင္းမယ္ထင္ပါတယ္။


Original Post ကုိဒီမွာၾကည္. ပါ ။
လြယ္ကူေအာင္ modified လုပ္ထားတာပါ။

Programming ေလ့လာရင္ list ကုိလဲ ေမ့လုိမရပါဘူး ။
program ေလး တစ္ခုေရးၾကည္ရေအာင္ လြယ္လြန္းလုိ.Screen Design မျပေတာ့ဘာဘူး။
ကုိယ္.ဟာကုိယ္ပဲ လုပ္ၾကည္လုိက္ေတာ့:D Exercise ေပါ႔


List အတြင္းမွာ item (for example:name) မ်ားရွိမယ္ ။Item ကုိေခၚခ်င္ရင္ index number ေပးေပါ႔။

ဝမ္းသာစရာ သတင္းက ဒီေန႔ပဲ ေမာင္ျပံဳးျပန္လာပါတယ္။ သူနဲ႔အတူ MIT နဲ႔ Standford က Video Tutorial မ်ားပါလာပါတယ္။ ၾကည္.ၿပီးဆက္ေရးပါဦးမယ္။ ဒီေန႔ေတာ့ဒီေလာက္ပါပဲ။



Day-5
Using Random (Library) and If( statement)

ကုိထြန္:ဇာနည္ေက်ာ္ကုိ သေဘာက်လုိ Quizz ဂိမ္းေလးလုပ္ၾကည္.ရေအာင္။ပထမဆံုး Screen Design ေလး။

ပုိၿပီးရွင္းသြားေအာင္ ေအာက္က Flow Chart ေလး ကုိၾကည္.ပါ။

Programming Code ေလးပါ


Day-6
Python ကုိေလ့လာမယ္ဆုိရင္ Operator မ်ားလဲသိဖုိ. လုိပါတယ္၊
Symbol Type What it Does
+ #Mathematical -Addition
- # Mathematical- Subtraction
* # Mathematical -Multiplication
/ # Mathematical -Division
// # Mathematical -Truncating Division
** # Mathematical -Powers
% # Modulos- Returns the remainder from a division
# Shift -Left Shift
>> # Shift- Right Shift
& # Logical- And
| # Logical -Or
^ # Logical Bitwise- XOR
~ # Logical Bitwise -Negation
< # Comparison- Less than
> # Comparison -Greater than
'==' #Comparison- Equal to
!= # Comparison- Not Equal To
>= # Comparison- Greater than or Equal To
<= # Comparison -Less than or Equal To
'=' # Assignment -Assigns a value
+= # Assignment -Adds and assigns a value
-= # Assignment -Subtracts and Assigns a value
*= # Assignment -Multiplies and assigns a value
/= # Assignment -Divides and assigns a value
//= #Assignment -Truncate Divides and assigns a value
**= #Assignment -Powers and assigns
%= #Assignment -Modulus and assigns
>>= #Assignment -Shifts and assigns
= #Assignment -Shifts and assigns
And #Boolean
Or # Boolean
Not # Boolean

မူရင္:လင့္ခ္ပါ


For Loop Statements
ေအာက္က programming code ေလးကုိ ေလ့လာၾကည္ပါ ။ Screen design လဲေပးထားပါတယ္။
လြယ္လုိ.ရွင္းမျပေတာ့ဘာဘူး





Day-7

Simple Hacking


ငယ္ငယ္တုန္းကေတာ့ ေလာ့ခ္ကုိဟက္ျပတဲ့ အခန္:မ်ားရုပ္ရွင္တယ္မွာပါလာရင္ အရမ္:ေပ်ာ္ပါတယ္
စက္ကေလးကုိကုိင္ ေလာ့ခ္နဲ႔ဆက္လုိက္ရင္ number အမ်ားႀကီးတတ္လာၿပီး ခနၾကာေတာ့ ပြင့္သြားပါတယ္။ Computer စၿပီးသင္တုန္းကလဲ Command Line မွာ “dir” ရုိက္လုိက္ရင္ စာအမ်ားႀကီး တက္လာတာေတာ္ေတာ္ ေပ်ာ္ဖုိေကာင္းပါတယ္. ေအာ္သူမ်ားရုိက္ျပရင္ အထင္ႀကီးလုိ.:P။
အဲဒီ idea ေလးကုိ apply လုပ္ၾကည္.ရေအာင္


ပြင့္ဖုိ အတြက္ကုိတုိင္ Password ေပးၿပီးစမ္းလုိ. ရတဲ့ Combination Lock ျမင္ဘူးၾကလားမသိဘူး။
အိပ္ေတာ္ေတာ္မ်ားမ်ားမွာပါပါတယ္။ သူက Password (number ) ကုိကုိယ္ကုိတုိင္ ေပးလုိ.ရတယ္ေလ။ Password သိမွျပန္ ဖြင့္ႏူိင္တယ္ေလ။ အဲတာကုိ ဟက္လုပ္ရေအာင္ မ်ားေသာအားျဖင့္ Password က ၃လံုးပါ 001 ကေန 999 ေပါ႔ ။မ်ားေနမွာစုိးလုိ နစ္လံုးပဲစမ္းၾကည္. ရေအာင္။ 0 ကေန 99 ေပါ႔။ အဲဒါကုိhttp://en.wikipedia.org/wiki/Brute_force_attackလုိ.လဲလူသိမ်ားၾကပါတယ္။ Password မမွန္မျခင္: Character/ number မ်ားကုိ Generate လုပ္ၿပီးပစ္ထဲ့တာေပါ႔ ဗ်ာ။
Screen Design ေလးတစ္ခ်က္ၾကည္. ပါဦး။



Flow Chart ေလးကုိလဲၾကည္. ပါဦး


ဒီေနရာမွာ ေျပာခ်င္တာက အလုပ္တစ္ခုလုပ္ေတာ့မယ္ဆုိ Computer ေရွ႕မွာအၿမဲတန္: ရွိနဲ႔ဖုိ. မလုိအပ္ပါဘူး။ Paper Programming အရင္ လုပ္ၾကည္ပါ ။ ကုိျမင့္ေက်ာ္သူေျပာဘူးသလုိပဲ တကယ္တန္:က်ေတာ့ Programming မွာလုိအပ္တဲ့ For, For each, if, while etc statement မ်ားကုိေရးခ်ရင္ A4 နစ္မ်က္နာ ထက္ပုိမရွိပါဘူး ။ Programmer ေကာင္းဆုိတာ ေပးထားတာနဲ႔ System Limitation နဲ႔ ဆက္စပ္ၿပီး စဥ္းစားတတ္တာပါပဲ။ ပံုမွန္အားျဖင့္ 70% of your time ကုိ စဥ္းစားတာနဲ႔ reference ရွာတဲ့ေနရာမွာသံုးသင့္ပါတယ္ ။ Coding ကုိ 30% ထက္ပုိၿပီးသံုးစရာမလုိပါဘူး။

Programming Code ေလးေပးထားပါတယ္။ စမ္းၾကည္.ပါဦး





Day-8

Applying 'Pass’, ‘Break’ and ‘for’ statements

ဒီေန႔မွာေတာ့ Program တစ္ခုေခ်ာေခ်ာေမာေမာ အလုပ္လုပ္ ႏူိင္
ဖုိ.လုိအပ္တဲ့ Statement တခ်ဳိ.ကုိ နဲနဲ Highlight လုပ္တင္ျပသြားပါ႔မယ္။


အားလံုးစက္ဘီးကုိေတာ့ အနည္းဆံုးစီးဘူးၾကတယ္ ထင္ပါတယ္။ ကား ၊ ဆုိင္ကယ္ စသည္ျဖင့္ေပါ႔ ။ Newton ရဲ႕ နိယာမအရ ေျပးေနတဲ့ အရာတစ္ခုဟာ တားဆီးမူတစ္ခုခုမရွိရင္ ဆက္ၿပီး ေရြ.ၿမဲအတုိင္း ေရြ.ရွားပါတယ္တဲ့။ဒီေနရာမွာ ကႊၽန္ေတာ္နဲ႔ သေဘာထားခ်င္:တူမလာ: မသိဘူး။ ကားဘယ္ျဖစ္ျဖစ္ ဘာပဲျဖစ္ျဖစ္ ဘရိတ္ေကာင္းဖုိ. အရမ္:အေရးႀကီးပါတယ္။ မဟုတ္ရင္ အရွိန္မထိန္းႏူိင္ပဲဝင္တုိက္ပါလိမ့္မယ္။ ထုိနည္းတူစြာပဲ Program တစ္ခုဟာ ေကာင္းေကာင္းမြန္မြန္လည္ပတ္ႏူိင္ဖုိ. break statement ေကာင္းေကာင္းလုိအပ္ပါတယ္။ မဟုတ္ရင္ error တက္ပါလိမ့္မယ္။ သုိ.မဟုတ္ System ကုိပါ ထိခုိက္ႏူိင္ပါတယ္။

ဘယ္ေနရာမ်ားမွာလုိအပ္မလဲ? စဥ္းစားၾကည္.ရေအာင္။
၁။ လုိအပ္တဲ့ Range ေက်ာ္သြားတဲ့ အခါ?
၂။ မလုိအပ္တဲ့ အရာတခုခုကုိ ျမင္တဲ့အခါ
၃။ လုိအပ္တဲ့ အရာစီေ၇ာက္တဲ့အခါ စသည္ျဖင့္ေပါ႔….

ေမးစရာရွိပါတယ္ ဟာဗ်ာလြယ္လုိက္တာ။ ထင္မလားမသိပါဘူး။ တစ္ခ်ိန္လံုး break စသျဖင့္ လုပ္လာတာ ဘာညာ။ ကႊၽန္ေတာ္ေရးတာ အေၾကာင္းရွိပါတယ္။ အခုေျပာေနတာမ်ားက ေနာက္ပုိင္း ပုိစ္မ်ားကုိ Cover Up လုပ္ဖုိပါ။

ဒီတခါေတာ့ Program ေလးကုိ အရင္ၾကည္.ၾကည္. ရေအာင္


မူရင္းလင့္ခ္= http://www.tutorialspoint.com/python/python_loop_control.htm
Flow Chart ဆုိရင္ ပုိရွင္းသြာ:မလားမသိဘူး


Exercise ေလးေပးၾကည္.မယ္ရမလာ:? စမ္းလုပ္ၾကည္. ပါလား။
Exercise:ဒီProgram အတုိင္းပဲ string ကုိကုိယ္တုိင္ Assign လုပ္မယ္ break လုပ္ဖုိ. Special Character ကုိလဲကုိတုိင္ Assign လုပ္မယ္။ ရမလားစမ္းၾကည္.ပါဦး။မသိတာရွိရင္ Comment နဲ႔ေမးပါ ၄-၅ ရက္ၾကာရင္ Answer ကုိreply တင္ေပးပါ႔မယ္။ လုပ္ရမွာက

1. Screen Design
2. Flow Chart
3.Program code

Notepad++ သံုးပါ။ Internet က download လုပ္ပါ။ Flow Chart ကုိလဲ မမွန္မွာအရမ္းစိတ္မပူပါနဲ႔။ Flow chart ရဲ႕သေဘာအရမွန္တယ္မွားတယ္ မရွိပါဘူး။ လုိခ်င္တဲ့ Idea ရရင္ ေတာ္ပါပီ။
Geek မ်ားေနာင္မွ ေျဖပါ :P


Pass Statement



Break နဲ႔အတူသိသင့္သိထုိက္တဲ့ Statement တစ္ခုက “pass” ပါ။ Pass ကုိသံုးၿပီးProgram ထဲမွာ ကုိလုိခ်င္တဲ့ေနရာမွာ information ျဖစ္ျဖစ္ Programing Statement မ်ားပဲျဖစ္ျဖစ္ ထဲ့လုိ.ရပါတယ္။

Screen Design ကုိအရင္ၾကည္.ၾကည္.ပါဦး။



Flow chart ကုိေတာ့ ကုိယ္.ဟာကုိယ္ ဆြဲၾကည္.ပါဦး.
Programming Code ေပးထားပါတယ္။




Day-9

Python’s Features


(Python ရဲ႕ အားသာခ်က္မ်ားကုိ တင္ျပလုိက္ပါတယ္)
မူရင္းလင့္ခ္


1. Easy-to-learn: Python has relatively few keywords, simple structure, and a clearly defined syntax. This allows the student to pick up the language in a relatively short period of time.
သင္ၾကားရန္လြယ္ကူျခင္: - Python မွာသူမ်ား language မ်ားထက္စာရင္  keywords နဲပါတယ္။ Syntax မ်ားဟာ နားလယ္ရန္လြယ္ကူပါတယ္။ သင္ၾကားေလ့လာသူအတြက္ ေလ့လာရတဲ့ တုိေတာင္းေစပါတယ္။

2. Easy-to-read: Python code is much more clearly defined and visible to the eyes.
ဖတ္႐ႈရန္လြယ္ကူျခင္:- Python မွာရွိတဲ့ Code မ်ားဟာ ရွင္းလင္းစြာ အဒိတ္ပယ္ဖြင့္ဆုိထားၿပီး ၾကည္.႐ႈေလ့လာရန္ အဆင္ေျပေစပါတယ္။

3.Easy-to-maintain: Python's success is that its source code is fairly easy-to-maintain.
ျပင္ဆင္ရန္လြယ္ကူျခင္:- Python ရဲ႕အထိကေအာင္ျမင္မူပါ ။ Source code မ်ားဟာ လုိအပ္တဲ့အခါမွာ ျပဳျပင္ျပင္ဆင္ရန္ အဆင္ေျပပါတယ္။

4. A broad standard library: One of Python's greatest strengths is the bulk of the library is very portable and cross-platform compatible on UNIX, Windows, and Macintosh.
စံုလင္တဲ့ library ရွိျခင္:- Python ရဲ႕အားသာခ်က္တခုက Library မ်ားဟာ စံုလင္ၿပီး ေနရာေျပာင္:လဲအသံုးျပဳရန္ လြယ္ကူပါတယ္ ။ Platform ေတာ္ေတာ္မ်ားမ်ားကုိလဲ Suppot လုပ္ပါတယ္ ။ UNIX မွာလဲ run လုိ.ရပါတယ္၊ Windows မွာလဲ run လုိ.ရပါတယ္၊ Macintosh မွာလဲ run လုိ.ရပါတယ္။

5.Interactive Mode: Support for an interactive mode in which you can enter results from a terminal right to the language, allowing interactive testing and debugging of snippets of code.
အျပန္အအလန္ ဆက္သြယ္ႏူိင္ျခင္း- အျပန္အအလန္ ဆက္သြယ္ႏူိင္တဲ့ ပံုစံ ဖန္တီးေပးပါတယ္။ Result မ်ားကုိ terminal တစ္ခုခုကေန language ထဲ အထိ ထဲ့သြင္းလုိ. ရေစပါတယ္။ interactive testing၊ code အပုိင္းအစမ်ားကုိ debug လုပ္ျခင္:မ်ားကုိ ေထာက္ပံေပးႏူိင္ပါတယ္။

6.Portable: Python can run on a wide variety of hardware platforms and has the same interface on all platforms.
ေနရာအစံုအသံုးျပဳႏူိင္ျခင္:- Python ကုိ Hardwar Platform ေတာ္ေတာ္မ်ားမ်ားမွာ အသံုးျပဳလုိ.ရပါတယ္။ အားလံုးမွာလဲ Interface တူတူပါပဲ။
For example: UNIX မွာလဲ အသံုးျပဳႏူိင္ပါတယ္ ဒီပံုစံပါပဲ၊ Windows မွာလ ဲ အသံုးျပဳႏူိင္ပါတယ္ ဒီပံုစံပါပဲ၊ Macintosh မွာလ ဲ အသံုးျပဳႏူိင္ပါတယ္ ဒီပံုစံပါပဲ။

7. Extendable: You can add low-level modules to the Python interpreter. These modules enable programmers to add to or customize their tools to be more efficient.
လုိအပ္သလုိ တုိးခ်ဲ႕ႏူိင္ျခင္:-  low-level module မ်ားကုိ Python ရဲ႕ interpreter ေအာက္မွာ
ထက္ၿပီး ထက္မံထဲ့သြင္းႏူိင္ပါတယ္။ Programmer မ်ားအတြက္ အဲဒီ low-level module မ်ားက tool အသစ္မ်ား ထဲ့သြင္းျခင္း ျပဳျပင္ျပင္ဆင္ျခင္:ကုိ အဆင္ေျပပါတယ္။

8. Databases: Python provides interfaces to all major commercial databases.
Databases Support- Python ကုိ database ေတာ္ေတာ္မ်ားမ်ားနဲ႔ အသံုးျပဳလုိ. ရပါတယ္။
9. GUI Programming: Python supports GUI applications that can be created and ported to many system calls, libraries, and windows systems, such as Windows MFC, Macintosh, and the X Window system of Unix.
GUI Programming(http://en.wikipedia.org/wiki/Graphical_user_interface)- Python က System Calls, libraries, and windows systems (such as Windows MFC, Macintosh, and the X Window system of Unix)မ်ားရဲ႕ လုိအပ္ခ်က္ မ်ား အတြက္ GUI  applicationမ်ားဖန္တီးဖုိ. Support ေပးပါတယ္။ 

10. Scalable: Python provides a better structure and support for large programs than shell scripting.
Scalabe- Python မွာ ပုိမုိေကာင္းမြန္တဲ့ ဖြဲ.စည္းပံု ရွိပါတယ္။ Program ႀကီႀကီးမားမားမ်ားကုိ shell scripting ထက္ပုိမုိၿပီး ေထာက္ပံေပးႏူိင္ပါတယ္။ 

[တက္ႏူိင္သလုိ ဘာသာျပန္ေပး လုိက္ပါတယ္။ တခ်ဳိဟာမ်ားကုိ တမင္သက္သက္ ဘာသာမျပန္ေပးဘယ္ ခ်န္ခဲ့တာပါ။ မူရင္းဆုိလုိရင္း ပ်က္သြားမွာစုိးလုိ. ပါ။]



Day-10
Dictionary
http://www.tutorialspoint.com/python/python_dictionary.htm


ဒီေန႔ေတာ့ Dictionaary အေၾကာင္း ေလ့လာရေအာင္ ၊ dictionary ဆုိတာ တကယ္တမ္းေတာ့ table နဲ႔ ခက္ဆင္ဆင္တူပါတယ္။ Dictionary မ်ားမွာ items ရဲ႕ကီးနဲ႔ သူနဲ႔သက္ဆုိင္တဲ့ Value ပါပါတယ္။ ပုိၿပီးရွင္းေအာင္ example ေလးနဲ႔ ျပပါရေစ။


ကႊၽန္ေတာ္လုပ္ထားတဲ့ List Table ေလးဘာ အဲဒီအထဲ က ko_mark အတြက္စမ္းၾကည္.ရေအာင္။

Programming Code ေလးေလ့လာၾကည္.ပါ။ ရုတ္တရက္ဆုိ List နဲ႔ နဲနဲ ဆင္ပါတယ္။ List ရဲ႕ Index number နဲ႔ေခၚတာထက္စာရင္ သာပါတယ္။


အဲတာကုိ run ရင္ result ကဒီလုိရပါတယ္။


မခက္ပါဘူးေနာ္ လြယ္လြယ္ေလးပါ။ ကႊၽန္ေတာ္တုိ. နဲနဲေလး တုိးၿပီး လုပ္ၾကည္. ရေအာင္။
Update လုပ္ၾကည္.ရေအာင္ဗ်ာ။ ဒီတခါ ကုိစုိးသီ(ko_soethi)ကုိ စမ္းၾကည္.တာေပါ႔။ သူအတြက္ dictionary သက္သက္တည္ေဆာက္လုိက္ရေအာင္။ အေပၚက table ကုိ reference လုပ္ၿပီး ေဆာက္လုိက္ပါ။


ko_soethi ရဲ႕ “Likes” ကုိ change လုိက္ပါမယ္။ Update လုပ္လုိက္တယ္ေပါ႔။

ဒါေလး run ၾကည္.ရင္အေျဖက အေပၚကနဲ႔ မတူေတာ့ပါဘူး။



သူႀကိဳက္တာ “palartar” မဟုတ္ေတာ့ပါဘူး။ “samusarthote “(စမႈဆာသုပ္) ျဖစ္သြားပါတယ္။:P
Delete ကုိလဲစမ္းၾကည္.ပါဦး


Country ကုိ Delete လုပ္ၿပီးရင္ Print “Country is : “, dict[“Country”]ဆုိတဲ့လုိင္းမွာ Error တက္ပါ မယ္။ “Country” ဆုိတာမရွိေတာ့လုိ. ပါ။
စာဖတ္ရမွာ မပ်င္းပါနဲ႔
http://www.tutorialspoint.com/python/python_dictionary.htm ဖတ္ၾကည္.ပါ ။ အဲဒါမ်ားကုိ ေရးေနရင္ ၿပီးေတာ့မွာမဟုတ္ပါဘူး။



Homework :
၁။ကုိအာကာ(ko_arkar) အတြက္ Dictionary ေဆာက္ပါ။
၂။ သူရဲ႕ Country ကုိ delete လုပ္ေပးပါ။
၃။ အသစ္ၿပီးျပန္လုပ္ၿပီး ေျပာင္းေပးပါ ။“Germany”
၃။ko_mark နဲ႔ ko_arkar တုိ.ရဲ႕ Likes ကုိ “hotpot” နဲ႔ ”potato” အသီးသီး ေျပာင္းေပးပါ။



References:
http://wiki.python.org/moin/SimplePrograms
http://www.sthurlow.com/python
http://en.wikipedia.org/wiki/Python_%28programming_language%29
http://mail.python.org/pipermail/tutor/2009-June/069580.html
http://stackoverflow.com/questions/438894/how-do-i-stop-a-program-w...
http://www.tutorialspoint.com/python/python_overview.htm
http://ocw.mit.edu/OcwWeb/web/courses/av/#ElectricalEngineeringandC...


(p.s ဒီပုိစ္အတြက္ ဆရာကုိရာဗီ၊ ကုိအာကာ ၊ေမာင္ျပံဳး၊ ကုိေရွာင္ ၊ ကုိမတ္ခ္ ၊ ကုိထြန္:ဇာနည္ေက်ာ္ ၊ ကုိျမင့္ေက်ာ္သူ ၊ကုိစုိးသီ ၊ကုိဝိဇၨာ(Seth Hetu)ကုိ ေက်းဇူးအထူးတင္ရွိပါတယ္)

Views: 473

Tags: 100days, learning, programming, python, wayne

Comment

You need to be a member of MyanmarITPro - A Social Network for Myanmar IT Professionals to add comments!

Join MyanmarITPro - A Social Network for Myanmar IT Professionals

Comment by Wai on December 16, 2011 at 12:13am

#you can use raw_input and convert it into 'string'...

sample=str(raw_input("Pleasae enter the text :"))
for letter in sample:
    print 'Current Letter:',letter

Comment by Mya Mya Thwin on November 3, 2011 at 11:18am

from time import sleep

print "This is testing of print one characters at a time"
print " "
print "Please enter a text with ' '"
sample=input("Pleasae enter the text :")

for letter in sample:
    print 'Current Letter:',letter
    sleep(50)

 

အဲ့ဒါကို run လုိက္တာ error ျပပါတယ္။ error က Traceback (most recent call last):
  File "D:\python\forloop.py", line 6, in <module>
    sample=input("Pleasae enter the text :")
  File "<string>", line 1, in <module>
NameError: name 'mmt' is not defined

လုိင္း နံပါတ္ ၆ လို့ေျပာပါတယ္. ခုမွ python ကို စမ္းတုန္းပါ.. နားအလည္ႀကီးေတာ့မဟုတ္ပါဘူး သင္ခန္းစာေတြ ့လုိ ့စမ္းၾကည့္တာ အဲ့error တက္ေနလုိ့ပါ...

Comment by Wayne on October 18, 2011 at 8:11pm
please look forward to other articles . this is not the only one
Comment by Po Po on October 18, 2011 at 4:19pm

Halo, now is only 10 days. Do you have any plan for python tutorial? It is quite interesting and your way of introducing python is very easy to learn for those who even dun know programming. Thanks a lot. I hope to see some more tutorials for python. :)

 

Thanks and regards,

Po Po

Comment by ကိုကိုေခ်ာကလက္ရဲ႕ညီမေလး on February 16, 2010 at 11:07pm
ေက်းဇူးအထူးတန္းနဲ႔ တင္ပါတယ္..
ဆက္လက္ လို႔ သင္ျပေပးပါအုန္းေနာ္..
Comment by Wayne on February 12, 2010 at 10:42am
Got it bro,
I will change...
Thanks
Comment by Mark on February 12, 2010 at 9:48am
dict = {"name":.....

shadowing built-in object dict as variable name is bad practice.
Comment by Wayne on February 11, 2010 at 5:27pm
hi ဆရာကုိထြန္:ဇာနည္ေက်ာ္,

Comment ေတြကုိ နေမ်ာေနလုိ.ပါဗ်ာ :P
Comment by Tun Zarni Kyaw on February 11, 2010 at 4:56pm
ဆရာဝိန္း blog ခြဲမေရးေသးဘူးလား ...
Comment by Wayne on February 11, 2010 at 4:47pm
ဟုတ္ကဲ့ပါ ကုိစမူဆာစုိးသီကုိ ကုိစမူဆာစုိးသီလုိ. မေခၚပါဘူး
ကုိစမူဆာစုိးသီ :P

Latest Activity

min han (N.E student) posted a status
"Myanmar cyber police က CID မွာတဲ့ ဟုတ္ပါသလားခင္ဗ်ာ။ Myanmar cyber ဥပေဒအေၾကာင္းသိျခင္ပါတယ္။ သိရင္ေျပာျပၾကပါခင္ဗ်ာ။"
yesterday
min han (N.E student) updated their profile
yesterday
min han (N.E student) left a comment for Myo Thant
yesterday
min han (N.E student) left a comment for Myo Thant
yesterday
nyiminthit posted a status
"TPlink-TD8816 modern Router ကို config လုပ္ခ်င္လို ့ပါ အင္တာနက္လိုင္းမတက္လို ့တိုင္ပတ္ေနလို ့ကူညီၾကပါဦး ခင္မ်ာ"
Monday
Htet Oo Zaw replied to GaaRa's discussion ႈွYatanarpon ADSL ႏွင့္ Elite Fiber(FTTX) အင္တာနက္လိုင္း ႏွစ္လိုင္းကုိ load balancing လုပ္ခ်င္လို.ပါ
Monday
Htet Oo Zaw updated their profile
Monday
zaw moe tun updated their profile
Sunday
Profile Iconေဇာ္ထြန္း ေနျပည္ေတာ္, zaw lin tun, ႏိုင္မ်ိုးေဇာ္ and 185 more joined MyanmarITPro - A Social Network for Myanmar IT Professionals
Sunday
Phyo Phyo posted a status
"I want to know banking network .How to operate network."
Jul 24
Phyo Phyo updated their profile
Jul 24

© 2014   Created by Ko Chit.

Badges  |  Report an Issue  |  Terms of Service