Saturday, November 4, 2017

Python2 Lesson 9


Lesson 1 ၾကည့္ရန္ link  >> Click Here
Lesson 2 ၾကည့္ရန္ link  >> Click Here
Lesson 3 ၾကည့္ရန္ link  >> Click Here
Lesson 4 ၾကည့္ရန္ link >> Click Here
Lesson 5 ၾကည့္ရန္ link >> Click Here
Lesson 6 ၾကည့္ရန္ link >> Click Here
Lesson 7 ၾကည့္ရန္ link >> Cl
ick Here
Lesson 8 ၾကည့္ရန္ link >> Click Here

.............
အဆက္ ......
Python Programming
....................
ဒီတစ္ခါလည္း ေခါင္းစဥ္မတပ္ဘဲ စ ၾကည့္ရေအာင္။
variable ေလးေတြမွာ ကိန္းတြဲ (ကိန္းရွည္) ေတြ ပါေအာင္ ေရးၾကည့္ရင္း စ ရေအာင္။
>>> numbers = [ 1221, 1331, 1441, 1551, 1661, 1771, 1991, 1991 ]
ပံုစံေလးၾကည့္လိုက္တာနဲ႔ ဒါ ဘာနဲ႔ ေရးလိုက္တယ္ဆိုတာ သိမွာပါေနာ္ :)
အထက္ပါအတိုင္းပဲ numbers ကို variables လုပ္ထားလိုက္ပါတယ္။
ေကာင္းျပီ ဒီကိန္းတန္းထဲမွာ အၾကီးဆံုးကိန္းကို ရွာရေအာင္။ ဒီတိုင္းပဲ ၾကည့္ပါ။ သိသာေအာင္ ေရးထားလို့ မွားစရာမရွိပါဘူး။
၁၉၉၁ ဟာ အႀကီးဆံုးကိန္းဆိုတာ သိသာပါတယ္။ ဒါက ကြ်န္ေတာ္တို့က သိတာပါ။ ဒါကို ကြန္ပ်ဴတာက သိေအာင္ ဘယ္လို ထုတ္ၾကမလဲ။
အႀကီးဆံုးဆိုတာ maximum ပဲမဟုတ္္လား။ ဒါဆို maximum function နဲ႔ ထုတ္ရင္ ရျပီေပါ့။ Maximum Function ကို max () လို႔ ေရးပါတယ္။
>>> max (numbers)
1991
လြယ္လြယ္ေလးပဲေနာ္ဒ အေျဖထြက္သြားျပီ။ ကိန္းေတြကို အစဥ္လိုက္မဟုတ္ဘဲ ေသာင္းေျပာင္း ေရးထားတဲ့အခါ ဒီဖန္ရွင္ေလးက အလြယ္တကူ ထုတ္ယူရွာေဖြေပးႏိုင္မွာပါ။
အႀကီးဆံုး ရွာတတ္ျပီဆိုေတာ့ အငယ္ဆံုးကိန္း minimum ကို စဥ္းစားမိလိုက္ျပီလား။ ဟုတ္ပါတယ္။ min () ဆိုတဲ့ minimum function ေလးကို အသံုးျပဳႏိုင္ပါတယ္။ စမ္းၾကည့္တာေပါ့ ေနာ :)
>>> min (numbers)
1221
ဒါဆိုရင္ေတာ့ ဒီအပိုင္းကို ရေလာက္ျပီ ထင္ပါတယ္။ ဆက္လိုက္ရေအာင္ေနာ္။
ဒီတစ္ခါေတာ့ စာလံုးေတြကို အတန္းလိုက္ေရးျပီး တစ္လံုးစီ list ျပန္ခြဲထုတ္ရေအာင္။ ကဲ ဒီနာမည္ေလးကပဲ စ လိုက္ရေအာင္
>>> list ("khitminnyo")
['k', 'h', 'i', 't', 'm', 'i', 'n', 'n', 'y', 'o']
သူ႕ဘာသာ ခြဲထုတ္ေပးသြားတယ္ေနာ္။ ဟုတ္ရဲ႕လား။
>>> list ("I love you")
['I', ' ', 'l', 'o', 'v', 'e', ' ', 'y', 'o', 'u']
ဒါဆိုရင္ space ခ်ဲထားတဲ့ စာတန္းေတြကိုပါ ဒီအတိုင္း ရွာလို႔ရတယ္ဆိုတာ သိေလာက္ပါျပီေနာ္။
............
ဒီတစ္ခါေတာ့ Append Method လို႔ေခၚတဲ့ စာသားတန္ဖိုးကို ထပ္မံ ေပါင္းထည့္တဲ့ ဖန္ရွင္ေလးကို ေဆြးေႏြးေပးပါ့မယ္။
ေရွ႕ကို နည္းနည္း ျပန္ေႏႊးရေအာင္ပါ။
>>> a = [ "aa" , "bb" , "cc" ]
>>> b = [ "11" , "22" , "33" ]
>>> a += b
>>> a
['aa', 'bb', 'cc', '11', '22', '33']
>>>
အထက္ပါ function ေလးကို မွတ္မိၾကဦးမယ္ထင္ပါတယ္။ a ကို b ထဲက အစုဝင္ေတြ အကုန္ေပါင္းထည့္ျပီး တန္ဖိုး ေျပာင္းလဲထားတဲ့ပံုစံပါ။
အဲသည္ ဥပမာေလးကိုပဲ ေနာက္တစ္မ်ိဳး ထပ္ၾကည့္ရေအာင္ပါ။
>>> a = [ "aa" , "bb" , "cc" ]
>>> a.append ("11")
>>> a
['aa', 'bb', 'cc', '11']
.........
>>> a = [ "aa" , "bb" , "cc" ]
ဒါကေတာ့ မူလ တည္လိုက္တာျဖစ္ပါတယ္။
>>> a.append ("11")
append method ကို အသံုးျပဳျပီး 11 ကို ထပ္ထည့္လိုက္ပါတယ္
>>> a  သူ႕ကို ထုတ္ၾကည့္တဲ့အခါ ခုတိုင္း ထြက္လာပါေတာ့တယ္
['aa', 'bb', 'cc', '11']
ေနာက္ထပ္ ဥပမာေလးတစ္ခု ထပ္လုပ္ၾကည့္ရေအာင္ဗ်ာ
>>> kmn = ["K","M","N"]
>>> kmn.append ("KhitMinnyo")
>>> kmn
['K', 'M', 'N', 'KhitMinnyo']
ဒါေလးကိုေတာ့ ထပ္ရွင္းမျပေတာ့ပါဘူးေနာ
.............
...........
အေပၚမွာ ကြ်န္ေတာ္ ေဆြးေႏြးခဲ့တဲ့ Append Method ကေလးကို ျပန္ၾကည့္ရင္ Method ရဲ႕ ေဖာ္ျမဴလာ (ေရးနည္း) ေလးကို ခန္႔မွန္းမိၾကမယ္ထင္ပါတယ္။ Method  ေတြကို သံုးခ်င္တဲ့အခါ ဒီ Method ကို ထည့္သံုးႏိုင္တဲ့  Object ကို အရင္ေရးမယ္ ျပီးရင္ (.) ထည့္မယ္။ အစက္ကေလးပဲေနာ္။ ျပီးတာနဲ႔ အသံုးျပဳမယ့္ method ကို ထည့္ရပါမယ္။ ျပီးမွ ကြင္းထဲမွာ ေျပာင္းလဲ ထည့္သြင္းလိုေသာ အရာကို ေရးဖို႔ပါ။
...........
..........
Extend Method
ဒီတစ္ခါ အသံုးျပဳမွာက extended method ျဖစ္ပါတယ္။ သူ႔ကိုေတာ့ list  ေတြခ်င္း ေရာေႏွာခ်င္တဲ့အခါ သံုးႏိုင္ပါတယ္။ ဆင္တူပံုစံေတြ ထည့္မေျပာေတာ့ဘူးေနာ္။
>>> a = ["1","2","3","4","5"]
>>> b = ["w","x","y","z"]
>>> a.extend (b)
>>> a
['1', '2', '3', '4', '5', 'w', 'x', 'y', 'z']
lists ၂ခုကို ေရာျပီး သံုးထားတာမို႔လို႔  a += b ပံုစံနဲ႔ တူတယ္လို႔ ေျပာလို႔ေတာ့ ရပါတယ္။
.......
.......
ဒီတစ္ခါေတာ့ အမွတ္စဥ္ နံပါတ္ကို ျပန္ရွာေပးမယ့္ Index Method ကို ေလ့လာရေအာင္ပါ။
ခုန နမူနာမွာပဲ ဆက္လိုက္ရေအာင္။  a တန္ဖိုးေတြ မ်ားသြားတဲ့ထဲက w ရဲ႕ တည္ေနရာ အမွတ္စဥ္နံပါတ္ကို ရွာမယ္ဆိုပါစို႔။
သုညကေန ေရတြက္ရမွာမို႔လို႔ w ဟာ အမွတ္စဥ္ ၅ ေနရာမွာ ရွိမွန္း သိျပီးသားပါ။ ဒါကိုပဲ ျပန္ရွာတဲ့ ပံုစံေလးေရးရေအာင္။
>>> a.index("w")
5
တည္ေနရာအမွတ္စဥ္ကို ထုတ္ျပထားပါျပီ။ မလြဲဘူးေနာ္။
.........
........
ဒီတစ္ခါ ပိုျပီး စိတ္ဝင္စားစရာေကာင္းတာေလး ဆက္ရေအာင္။
Insert Method ေပါ့။ သူလည္း method ပဲမို႔ method ေဖာ္ျမဴလာအတိုင္းပဲ ေရးရမွာမို႔ မခက္ဘူးေနာ္။
ဒီအေၾကာင္း မေျပာခင္ အစားထိုး လဲလွယ္တဲ့ ဖန္ရွင္အေၾကာင္းကို ေလ့လာခဲ့ျပီးျပီေနာ္။ မွတ္မိရဲ႕လား။ အမွတ္စဥ္အလိုက္ အစားထိုးလိုက္တာေလ။
မေန႔ကတင္ day 9 lesson 2 မွာထည့္ေျပာထားတာပါ။ ေမ့သြားရင္ ျပန္ရွာၾကည့္ပါဦး။
မေန႔ကေတာ့ အမွတ္စဥ္ တစ္ခုေနရာမွာ အစားထိုးထည့္သြင္းတာမို႔ replace function ေပါ့။ ခုကေတာ့ အစားထိုးမွာမဟုတ္ဘူးေနာ္။ လိုခ်င္တဲ့ ေနရာမွာ ထပ္ထည့္မွာ။
ကဲ ၾကည့္ရေအာင္။
>>> x = ["(0)Apple","(1)Orange","(2)Banana","(3)Mango","(4)Lemon","(5)Grape"]
ပထမဆံုးအေနနဲ႔ x ဆိုတဲ့ variable တစ္ခုကို list လုပ္ထားလိုက္ပါတယ္။
ကိန္းဂဏန္းေတြကေတာ့ အမွတ္စဥ္ ျမင္သာေအာင္ ျပျခင္းပါ။ အမွတ္စဥ္ မွတ္ထားေပးရင္ ရပါျပီဗ်။ ကိန္းေတြ မလိုပါဘူး။
>>> x.insert(3,"Melon")
ဒါကေတာ့ သံုးလံုးေက်ာ္ျပီးတဲ့အခါ Melon ကို ထပ္ထည့္မယ္လို႔ ဆိုလိုတာပါ။ အစားထိုးမွာ မဟုတ္ဘူးေနာ္။ ထပ္ထည့္မွာ။
>>> x
['(0)Apple', '(1)Orange', '(2)Banana', 'Melon', '(3)Mango', '(4)Lemon', '(5)Grape']
x ကို ျပန္ေဖာ္ၾကည့္လိုက္တဲ့အခါမွာေတာ့ ေရွ႕ဆံုး ၃ခုေက်ာ္၊ နံပါတ္စဥ္ ၃ (သုညကေန ေရတဲ့) ေနရာမွာ အစားဝင္လာတာကို ေတြ႔ရပါမယ္။
မူလက တည္ထားခဲ့တဲ့ထဲက ကိန္းေတြဟာ အမွတ္စဥ္ကို ရွင္းရွင္းျမင္ရဖို႔သာ တမင္ထည့္ထားတာေနာ္။ ဝင္လာတဲ့ စာနဲ႔လည္း ကြဲကြဲျပားျပား ျမင္ရေစခ်င္တာေၾကာင့္လည္း ပါတယ္ဗ်။
............
ဒီေလာက္ဆိုရင္ insert ကို လည္း သိေလာက္ျပီ insert နဲ႔ replace နဲ႔ မတူတာကိုလည္း သိေလာက္ပါျပီ။
..........
..........
Pop Method
Method ေတြအားလံုး ေရးပံုခ်င္းတူတာေၾကာင့္ ဒီတစ္ခါေတာ့ သိပ္ရွင္းျပစရာမလိုေလာက္ေတာ့ဘူး ထင္ပါတယ္။
>>> x = ["(0)Apple","(1)Orange","(2)Banana","(3)Mango","(4)Lemon","(5)Grape"]
ပထမအတိုင္းပဲ ျပန္ထားျပီး စမ္းၾကည့္ရေအာင္ပါ။
>>> x.pop(2)
'(2)Banana'
ဒုတိယေၾကာင္းမွာ pop method ကို နံပါတ္စဥ္ ၂ မွာ အသံုးျပဳလိုက္ပါတယ္။ 2 သည္ Banana ျဖစ္ေၾကာင္း ျပန္ေဖာ္ျပေပးတာပါ။
>>> x
['(0)Apple', '(1)Orange', '(3)Mango', '(4)Lemon', '(5)Grape']
ျပီးတဲ့အခါ x ကို ျပန္ေဖာ္ၾကည့္လိုက္ေတာ့ (2)Banana ကို မေတြ႔ရေတာ့ပါဘူး။
ဒါက pop method ရဲ႕ သဘာဝပါ။ နားလည္ျပီထင္တယ္ေနာ္။
သူ႔ကို ဘယ္လိုေနရာေတြမွာ သံုးမလဲ?
ထုတ္ယူလိုက္ျပီးတာနဲ႔ မရွိေတာ့ဘဲ က်န္တာေတြသာ ေဖာ္ျပမယ့္ေနရာမ်ိဳးမွာ သံုးတယ္ေပါ့။
အထက္ပါ လုပ္ေဆာင္ခ်က္ေတြကို ျပန္စုၾကည့္ရေအာင္။
>>> x = ["(0)Apple","(1)Orange","(2)Banana","(3)Mango","(4)Lemon","(5)Grape"]
>>> x.pop(2)
'(2)Banana'
>>> x
['(0)Apple', '(1)Orange', '(3)Mango', '(4)Lemon', '(5)Grape']
သံုးေၾကာင္းတည္းပါ။
...................
...................
Remove Method
သူလည္းဖယ္ထုတ္တာပါပဲ။ ဒါေပမယ့္ အမွတ္စဥ္နဲ႔ မဟုတ္ဘဲ တိုက္ရိုက္ ဖယ္ထုတ္တာပါ။ နမူနာ လုပ္ၾကည့္ရေအာင္။
>>> x = ["Apple","Orange","Banana","Mango","Lemon","Grape"]
>>> x . remove ("Mango")
>>> x
['Apple', 'Orange', 'Banana', 'Lemon', 'Grape']
   ဒီေလာက္ဆိုရင္ေတာ့ pop နဲ႔ Remove မတူတာလည္း သိေလာက္ျပီ ထင္ပါတယ္။
.........
.........
ခုေတာ့ Reverse Method ကေလးကို ေဆြးေႏြးသြားပါ့မယ္။ Reverse ဆိုတဲ့အတိုင္းပဲ ေရွ႕ေနာက္ကို ေျပာင္းလဲေပးမွာျဖစ္ပါတယ္။
>>> x = ["Apple","Orange","Banana","Mango","Lemon","Grape"]
>>> x . reverse ()
>>> x
['Grape', 'Lemon', 'Mango', 'Banana', 'Orange', 'Apple']
>>>
x . reverse () မွာ ကြင္းထဲ ထည့္စရာမလိုပါဘူး။ ေနာက္ကေန ျပန္စီမွာမို႔ ပါ။
........
........
Sort Method
Sort ဆိုတဲ့အတိုင္းပဲ စီတဲ့ေနရာမွာ အသံုးျပဳႏိုင္ပါတယ္။ သူက ႀကီးစဥ္ငယ္လိုက္ပဲ စီစဥ္သြားပါတယ္။ ေအာက္ပါ ဥပမာေလးေတြကို ၾကည့္ရေအာင္။
>>> x = [ 1, 5, 12, 4, 50, 33, 21, 19, 100, 99, 88]
>>> x.sort()
>>> x
[1, 4, 5, 12, 19, 21, 33, 50, 88, 99, 100]
>>>
ေသာင္းေျပာင္းျဖစ္ေနတဲ့ ကိန္းေတြကို စီေပးလိုက္ျပီေနာ္။
ေနာက္တစ္ခု ဥပမာၾကည့္ရေအာင္။
>>> y = ["zoo","house","apple","ball","cat","dog"]
>>> y.sort()
>>> y
['apple', 'ball', 'cat', 'dog', 'house', 'zoo']
>>>
ဘယ္လို စီလိုက္တာ သင္ျမင္ပါသလဲ။
ခုေလာက္ဆို sort method ကို ေကာင္းေကာင္းသိျပီိလို႔ ယူဆလိုက္ပါျပီ။
.........
.........
ဒီတစ္ခါေတာ့ idle ကို အသံုးျပဳသြားမယ္လို႔ စီစဥ္လိုက္တဲ့အတြက္ idle နဲ႔ သင္ခန္းစာ ေျပာင္းေရးလိုက္တာမို႔ အခ်ိန္ေနာက္က်သြားပါတယ္။
...........
ေရးတဲ့အပိုင္းေရာ RUN တဲ့အပိုင္းကိုပါ တစ္ျပိဳင္နက္တည္း လုပ္ေဆာင္ႏိုင္တာမို႔ idle က ပိုျပီး ျမန္ဆန္ထိေရာက္စြာ လုပ္ေဆာင္ႏိုင္ပါလိမ့္မယ္။
ေရွ႕ပိုင္းေတြမွာက python နဲ႔ ipython တို႔ကိုသာ အသံုးျပဳခဲ့တာက manual သိေအာင္ရယ္ Terminal ကေန python ......py နဲ႔ RUN တတ္ေအာင္ရယ္ ျဖစ္ပါတယ္။
ခုေလာက္ဆို manual run တာကိုလည္း သိျပီးျဖစ္လို႔ ထူးေထြ ေျပာမေနလိုေတာ့ပါ။ စ လိုက္ရေအာင္ဗ်ာ။
....
သင္ခန္းစာ မစတင္မီ ဒီေန႔ idle ကို အသံုးျပဳမွာျဖစ္လို႔ idle ကို ဖြင့္ထားဖို႔ရယ္ file >> New ေခၚထားဖို႔ရယ္ လိုအပ္ပါတယ္။
file name ကို Day 11 ရဲ႕ အတိုေကာက္ အျဖစ္ d11 လို႔ ေပးလိုက္ပါ။ idle ကေန save တာမို႔ .py ထည့္စရာမလိုပါ။
...
pricelist = []
price = ""
while price != "kmn":
    print """ The following things are what can do with this program
               0 - Exit
               1 - Show Pricelist
               2 - Add Price
               3 - Delete Price
               4 - SortPricelist """
    choice = raw_input(" Choice  :  ")
အထက္ပါကုဒါလိုင္းေလးေတြကို သတ္မွတ္ထားတဲ့ သတ္မွတ္ပံုစံေလးကို ျပန္ေလ့လာပါ။
ရွင္းျပဖို႔ လိုတာေတြ ေျပာပါမယ္။ ပထမဆံုးအေနနဲ႔ pricelist ကို ဘာမွ် မျဖည့္ဘဲ ထားလိုက္ပါတယ္။ ဒုတိယအေနနဲ႔လည္း price ကို ဘာဆိုဘာမွ ျဖည့္မထားပါဘူး။ တတိယအေနနဲ႔ေတာ့ while loop ကေလးနဲ႔ ဆက္ထားျခင္းျဖစ္ပါတယ္။
while loop ေအာက္မွာရွိတဲ့ ပရင့္မွာေတာ့ Triple code ေခၚ သံုးထပ္စည္းနဲ႔ ေရးထားတာကို ေတြ႕ရပါမယ္။ ပံုမွန္ print လို "......." နဲ႔ ေရးရင္ ခုလို မေပၚပါဘူး။ choice ကို while loop နဲ႔ တြဲမွာမို႔ while loop ေအာက္မွာ ေရးရပါမယ္။ အေပၚကပရိုဂရမ္ကို ျပန္ၾကည့္ရင္ အေတာ္ေတာ့ ရုပ္ေပါက္ေနပါျပီ။ ဘာရုပ္လဲေတာ့ မသိဘူးေနာ္။ ကဲ ရွင္းျပစရာေလးေတြ ရွင္းျပပါမယ္။
ကြ်န္ေတာ္တို႔ ခုေရးထားတဲ့ ပရိုဂရမ္ နဲ႔ ပတ္သက္ျပီး ေလ့လာၾကည့္ရေအာင္။ ခုပံုစံကေလးကို ၾကည့္ရင္ ကြ်န္ေတာ္ေရးထားတာက
        0 - Exit
        1 - Show Pricelist
        2 - Add Price
        3 - Delete Price
        4 - SortPricelist
ဆိုတဲ့အတိုင္းပါပဲ။ exit လုပ္ခ်င္ရင္ 0 ကို ႏွိပ္၊ Pricelist ေတြ ထုတ္ျပခ်င္ရင္ 1 ကိုႏွိပ္၊ Price ေတြ ထပ္ထည့္ခ်င္ရင္ 2 ကိုႏွိပ္၊ Price ေတြ ဖ်က္ခ်င္ရင္ 3 ကိုႏွိပ္၊ price list ကို စီခ်င္ရင္ 4 ကိုႏွိပ္ လို႔ ေရးထားတာပါ။
ေရးသာ ေရးထားတာ တစ္ကယ္တမ္း အလုပ္မလုပ္ေသးပါဘူး။ ဘာလို႔လဲဆိုေတာ့ အလုပ္ လုပ္ေစမယ့္ ကုဒ္မွ မပါေသးတာ။
if choice == "0":
        print "\n Good Bye! "
အထက္ပါ ကုဒ္လိုင္းေလးကို choice မွာမို႔ ခုနလိုင္းေအာက္မွာပဲ ဆက္ေရးမွာျဖစ္ပါတယ္။ ဒါဆို 0 ကို ေရြးခ်ယ္လိုက္ရင္ exit လုပ္မွာမို႔ exit မထြက္ခင္ Good Bye ဆိုတာေလးကို ထုတ္ျပလိုက္တာပါ။
elif choice == "1":
        print "\n The following is list of the program "
        for item in pricelist:
            print item
သက္ဆိုင္ရာ လိုင္းေအာက္ေတြမွာပဲ ေရးမွ အဆင္ေျပပါမယ္ေနာ္။
    elif choice == "2":
        add = int(raw_input("Add Any Price :  "))
        pricelist.append(add)
ဒါက အမွတ္စဥ္ ၂ အတြက္  ကုဒ္ေပါ့။ သင္ျပီးသားေတြခ်ည္းပဲမႈိ႔ ရွင္းျပမေနေတာ့ဘူးေနာ္။
    elif choice == "3":
        delete = int(raw_input("Please type number you want to delete :  "))
        if delete in pricelist:
            pricelist.remove(delete)
        else:
            print delete, "is not in our pricelist, now."
ဒါက အမွတ္စဥ္ သံုးအတြက္ပါ။
ထပ္ဆက္ရေအာင္ေနာ္
    elif choice == "4":
        pricelist.sort()
        pricelist.reverse()
ဒါဆိုရင္ နံပါတ္  0 - 4 ထိ အားလံုးအတြက္ စီစဥ္ျပီးပါျပီ။ ဒါေပမယ့္ အေၾကာင္းေၾကာင္းေၾကာင့္ေပါ့ အသံုးျပဳသူက 0 - 4 အတြင္း မဟုတ္ဘဲ အျခားကိန္းေတြ မွားရိုက္မိရင္ေကာ။ ပရိုဂရမ္ စီစဥ္တဲ့အခါ ဘက္ေပါင္းစံုလည္း စဥ္းစားဖို႔ လိုအပ္ပါေသးတယ္။
    else:
        print "\n Your choice  ", choice , " is Invalid number."
အထက္ပါ တစ္လိုင္း ထပ္ထည့္လိုက္ရင္ ခုန အခက္အခဲ ေျပလည္ျပီေပါ့။ ကဲ အခ်ိန္ရွိတုန္းေလး ထပ္ဆက္ရေအာင္ခင္ဗ်။
Program တစ္ဖိုင္လံုးကို ေအာက္မွာ ျပန္ျပေပးမယ္ေနာ္။
pricelist = []
price = ""
while price != "kmn":
    print """ The following things are what can do with this program
               0 - Exit
               1 - Show Pricelist
               2 - Add Price
               3 - Delete Price
               4 - SortPricelist """
    choice = raw_input(" Choice  :  ")
    if choice == "0":
        print "\n Good Bye! "
    elif choice == "1":
        print "\n The following is list of the program "
        for item in pricelist:
            print item
    elif choice == "2":
        add = int(raw_input("Add Any Price :  "))
        pricelist.append(add)
    elif choice == "3":
        delete = int(raw_input("Please type number you want to delete :  "))
        if delete in pricelist:
            pricelist.remove(delete)
        else:
            print delete, "is not in our pricelist, now."
    elif choice == "4":
        pricelist.sort()
        pricelist.reverse()
    else:
        print "\n Your choice  ", choice , " is Invalid number."
................
ေရးထားတဲ့ စာေလးက နည္းနည္း ေလးပါပဲ။ ဒါေပမယ့္ အစြမ္းကို စမ္းၾကည့္လိုက္ရေအာင္။
RUN လိုက္လို႔ ထြက္လာတဲ့အထဲက နံပါတ္ ၂ ကိုႏွိပ္ပါ။ Add Price ေပါ့။ ခုမွ စမွာဆိုေတာ့ ဘာမွ မရွိေသးတဲ့အတြက္ ျဖည့္ရတာပါ။
ကဲ 100  လို႔ ရိုက္ထည့္လိုက္ပါ။ ျပီးရင္ နံပါတ္ ၂ ကိုေရြး။ 200 ထပ္ထည့္။ နံပါတ္ ၂ ထပ္ေရြး။ 300 ထည့္။ နံပါတ္ ၂ ထပ္ေရြး။ 400 ထည့္။
ျပီးရင္ ေဒတာေတြ မွတ္ထားတာ အဆင္ေျပ မေျပ နံပါတ္ ၁ ကို ႏွိပ္ျပီး ျပန္ၾကည့္လိုက္ရေအာင္။
  Choice  :  1

 The following is list of the program
100
200
300
400
 The following things are what can do with this program
               0 - Exit
               1 - Show Pricelist
               2 - Add Price
               3 - Delete Price
               4 - SortPricelist
ျပန္စစ္ၾကည့္ရင္ အထက္ပါပံုစံအတိုင္း ျမင္ရပါမယ္။ ဒါ ကြ်န္ေတာ္တို႔ ျဖည့္သြင္းထားတဲ့ ေဒတာေတြ ေအာင္ျမင္ျပီေပါ့။
 Choice  :  3
Please type number you want to delete :  300
ခုျမင္ရတဲ့အတိုင္းပဲ အမွတ္ ၃ ကို ေရြးျပီး ၃၀၀ ကို နမူနာအေနနဲ႔ ဖ်က္ၾကည့္လိုက္တာပါ။
ကဲ ဟုတ္မဟုတ္ ၁ ကိုေရြးျပီး ျပန္ေဖာ္ၾကည့္ရေအာင္။
 Choice  :  1

 The following is list of the program
100
200
400
ျပန္စစ္ၾကည့္ရင္ ခုန ဖ်က္လိုက္တဲ့ ၃၀၀ ပါမလာေတာ့တာကို ေတြ႕ရပါလိမ့္မယ္။ ဒီတစ္ခါေတာ့ ေနာက္ဆံုး command ကို စမ္းၾကည့္ရေအာင္ပါ။
 Choice  :  4
 The following things are what can do with this program
               0 - Exit
               1 - Show Pricelist
               2 - Add Price
               3 - Delete Price
               4 - SortPricelist
အထက္ပါအတိုင္းပဲ နံပါတ္ ၄ command ကို အသံုးျပဳျပီး ကိန္းေတြကို ႀကီးစဥ္ငယ္လိုက္ ျပန္စီလိုက္ပါတယ္။
 Choice  :  1

 The following is list of the program
400
200
100
နံပါတ္စဥ္ ၁ ကို ေရြးျပီး ျပန္ၾကည့္လိုက္တဲ့အခါမွာေတာ့ အထက္ပါအတိုင္းပဲ ကိန္းေတြ ျပန္စီထားတာကို ျမင္ရပါမယ္။ ဒီသင္ခန္းစာေလးကို ပိုင္ႏိုင္ေအာင္ ေလ့လာထားၾကပါခင္ဗ်ာ
အခက္အခဲေတြ ရွိရင္လည္း comment မွာေမးႏိုင္ပါတယ္။

ဆက္ရန္ ...............


အားလံုး အဆင္ေျပ ေပ်ာ္ရႊင္ၾကပါေစခင္ဗ်ာ

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


Thanks


Khit Minnyo

0 comments:

Post a Comment