Odin-Taungoo Chapter-1

Chapter 1: Whetting Your Appetite

computerကအချို့သောအလုပ်တေကိုအလိုအလျောက်တွက်ချက်လုပ်ပေးနိုင်သည်။
-eg : မြောက်များစွာသော text file ပေါ်က search and replace ကိတ်စတေ or ဓာတ်ပုံ files တေကို rename and rearrange လုပ်တာတေကို computer က
complicated wayအနေနဲ့ထမ်းဆောင်ပေး
ပါတယ်။
-database အသေးစားလေတေ or specialized လုပ်ထားတဲ့GUI application or ရိုးရိုးgame တေကိုcomputer နဲ့ရေး
နိုင်လိမ့်မယ်။
-professional software developer ဆိုရင် C\C++\Java libraries တေနဲ့အလုပ်လုပ်ရတယ်။ဒါပေမဲ့ write/compile/test/recompile cycle ရဲ့
အလုပ်လုပ်ပုံကအရမ်းနေှးတာသိရှိရတယ်။-များစွာလုပ်ငန်းတေအတွက် testing code တေကိုဒ ီlibraries ထဲမှာရှာပြီးအသုံးပြုနိုင်
ပါတယ်။
extension languageနဲ့ program
တစ်ခုရေးနိုင်သလို new language
နဲ့ရေးရင် design နဲ့ implementပိုင်း မလိုတော့ပါဘူး။
-Python က language တစ်ခုဖြစ်တယ်
-Unix shell script or Windows batch
filesတေကိုဒီ tasks တေအတွက်အသုံးပြု
ပါတယ်။ဒါပေမဲ့ shell script က filesတေ
ရွေ့တဲ့အခါ နဲ့ text data တေ changing
လုပ်တဲ့အခါ ကောင်းတယ်။သူကgame
တေ GUI application တေအတွက်မသင့်
တော်ဘူး။
-C/C++/Java program တေအသုံးပြုမယ်
ဆိုရင် မထမဆုံး program တစ်ခု run
တာနဲ့တင် development timeအများ
ကြီးယူပစ်လိုက်တယ်။
-Python ကသုံးရတာလွယ်တယ်windows
တိုင်းမှာ အလွယ်တကူ install လုပ်နိုင်
တယ် Mac OS X နဲ့ Operating system
အမျိုးအစားဖြစ်တယ် အလုပ်တေကို
more quickly နဲ့လုပ်ပေးတယ် အချိန်
တိုတိုအတွင်း work done ဖြစ်တယ်။
-Python ကသုံးရတာလွယ်တယ ်
Programing language လည်းဖြစ်တယ်
-python က large program တေကို shell script နဲ့ batch files တေပေးနိုင်တာထက်
support လုပ်ပေးနိုင်ပါတယ် error အများ
ကြီးကိုလည်း Cထက် လျင်မြန်စွာနဲ့အ
လွယ်တကူစစ်နိုင်တယ် Python က very
high programming ဖြစ်တယ်။သူ့မှာ high
level data types ကို built inလုပ်ပေး
ထားတယ် ဥပမာ flexible arrays နဲ့ dictionaries လိုမျိုး တစ်ခါတည်း ဆောက်
ပေးထားသလိုမျိုးဖြစ်ပါတယ် ။
-python က program တစ်ခုလုံးကို
modulesအဖြစ် ခွဲထုတ်လိုက်တယ် ခွဲထုတ်
လိုက်တဲ့ modules တေကို အစုလိုက် လေ့
လာနိုင်တယ် ဥပမာ Python မှာ program
တေစပြီးလေ့လာသလိုမျိုးဖြစ်တယ်။
ဒီ modules အချို့ က file I/O ,system calls
,sockets နဲ interface တေကို provide
လုပ်ပေးတယ် ။
-Python က interpreted language လည်း ဖြစ်တယ်။ဒီ language က program
development လုပ်နေစဉ်မှာ considerable
time ကို သက်သာစေတယ် ဘာကြောင့်သက်သာစေလဲဆိုတော့ compilation နဲ့ linking မလိုအပ်တဲ့အတွက်
ဖြစ်တယ်။လက်ဖြင့်တွက်သလိုကျွမ်းကျင်သောစားပွဲတင် calculator လို့သတ်မှတ်
ကြသေးတယ်။
-Python ကသေသပ်သော ဖတ်ရတာသင့်တော်သော program တစ်ခု
ဖြစ်တယ် Python program C/C++/Java program တေထက် much shorterဖြစ်တယ်။
*high level data types က single
statement မှာရွုပ်ထွေးနေတဲ့operations
တေကို allowလုပ်ပေးတယ်
*brackets အစနဲ့အဆုံး အစား statement
grouping ကပိုပြီးအသုံးများတယ်
*variable တေ argument တေကြေညာ
စရာမလိုဘူး။
############
Chapter 2..Using the python interpreter

2.1.Invoking the interpreter
Python interpreter ကို များ​သောအားဖြင်​့ pathလမ်​း​ကြောင်​း
c/user/local/bin/python3.6 မှာ install လုပ်​တယ်​ ကိုယ်​့ရဲ့pathမှာ directory ထည်​့ရင်​ DOS boxမှာ ရှိတဲ့ command promptက set path=%path%C:/python3.6ကို သ​ုံးတယ်​
2.1.2.Interactive Mode
When commands are read from a tty,the interpreter is said to be in interactive mode.
# it prompts for the next command with the primary prompt,
usually three greater-than signs ( >>> );
# for continuation line it prompts with the secondary prompt,by default three dots (. . .);
'_' name input
Eg: The_ world_ is_flat=true
control p(print)
control D(quit())
ကိုယ်​လိုချင်​တဲ့စာ(line)ကို ပြန်​​ခေါ်ချင်​ရင်​ လိုချင်​တဲ့လိုင်​းမှာ cursorချ enter​ခေါက်​
စာ​ကြောင်​း​ရေးမယ်​ဆိုလျှင်​
Su_ Su_ is a student
(OR)
Su Su is a student
2.1.1 Argument passing
When known to the interpreter, the script name and additional argument are turned into a liat of stringa and assigned to the argv variable sysyem module.
Can access this list by executing
import sys.
The length of list ia at least one.
When no script and no argument are given,sys.argv[0] is an empty string.
2.2. The Interpreter and Its Environment
By default,Python sources files are treated as encoded in UTF-8.
The first line of encoding syntax is # -*- coding: encoding -*-
Windows-1252 encoding syntax is
# -*- coding: cp-1252 -*-
One exception to the first line rule is when the source code star with a UNIX "shebang"line.in this case.,the encoding declaration should be added as the second line of the file.for example,
#!/user/bin/env python3
# -*- coding: cp-1252 -*-
############
5.3..Tuple
-tuple is a sequence of immutable python objects
-just like lists
To create a tuple,place value within brackets:
>>>i = (1,2,3)
>>>i[0]
1
It is also possible to create a tuple without parentheses,by using commas:
>>>i = 1,2
>>>i
(1,2)
If you want to create a tuple with a single element,you must use the comma:
>>>singleton = (1, )
You can repeat a tuples by multiplying a tuple by a number:
>>>(1, )* 5
(1,1,1,1,1)
You can concatenate tuples and use augmented assignement(*=,+=):
>>>s1 =(1,0)
>>>s1 +=(1, )
>>>s1
(1,0,1)
-two methods available only:
#index , to find occurence of a value
#count, to count the number of occurence of a value
>>>i = (1,2,3,1)
>>>i.count(1)
2
>>>i.index(2)
1
*******
Tuple consists of a number of values separated by commas,for instance:
>>>t = 123,543,'hello!'
>>>t[0]
123
>>>t
(123,543,'hello!')
# tuples may be nested:
......u= t, (1,2,3,4,5)
>>>u
( (123,543,'hello!'),(1,2,3,4,5) )
#tuples are immutable:
.....t[0] = 8888
>>>TypeError:'tuple' objects does not support item assignment
#the reverse operation is also possible:as known as tuple packing:
>>> x,y,z = t
>>>x
123
>>>z
'hello!'
############
5.4....Sets
Python includes a data type for sets.
#to create an empty set you have to use set( ) , not { }
>>> a = set([1, 2, 3, 4])
>>> b = set([3, 4, 5, 6])
>>> a | b # Union {1, 2, 3, 4, 5, 6}
>>> a & b # Intersection {3, 4}
>>> a < b # Subset False
>>> a - b # Difference {1, 2}
>>> a ^ b # #Symmetric Difference {1, 2, 5, 6}
..............
>>>a = set( 'abracadabra' )
>>>b = set( 'alacazam' )
>>>a
{'d' ,' b' ,'a' , 'r', 'c'}
>>>a-b
{'r' , 'd' , 'b' }
>>>a | b
{'a' , 'c' , 'r' , 'd' , 'b' ,'m' , 'z' , 'l'}
>>>a & b
{ 'a' , 'c' }
>>> a ^ b
{ 'r', 'd' , 'b' , 'm' , 'z' , 'l'}
#############
5.5.....Dictionaries
Dictionaries က keys ဖြစ်တဲ့ stringsနဲ့number တွေကိုindexအနေနဲ့ သုံးပြီးတော့keyတွေကuniqueဖြစ်ရမယ်Dictionariesရဲ့အဓိကလုပ်ဆောင်ချက်ကkeyတစ်ခုနဲ့valueတစ်ခုကို သိမ်းပြီး keyနဲ့ပဲဆွဲထုတ်ရပါမယ် deleteလုပ်ချင်ရင် del statement ကိုသုံးရပါမယ််ရိှပြီးသားkeyထဲကိုမှနောက်ထပ်valueထည့်ပြီး ဆွဲထုတ်ရင် new valueပဲပြပါမယ် ဘာဖြစ်လို့လဲဆိုတော့ non existent key ကိုသုံးခြင်းအားဖြင့်valueကိုဆွဲထုတ်ရင်errorတက်ပါတယ်list(dkeys())ကdictionaryထဲရိှ
တဲ့keysအားလုံးရဲ့listကိုreturnပြန်ပေးပါတယ် sorting စီရင်တော့ sorted(d.keys())ကိုသုံးပြီး dictionary ထဲမှရိှတဲ့ key တစ်ခုစီကို စစ်ချင်​ရင် (in) keywordကို သုံးရပါမယ်
>>>number={1:1043,3:1023,3:1034}
>>>alphabet={`a`:1045,`b`:1456,`d`:1453,`c`:3214}
>>>alphabet[`a`]
1045
>>>alphabet[`e`]=2345
>>>alphabet
{`a`:1045,`b`:1456,`d`:1453,`c`:2314,`e`:2345}
>>>sorted(alphabet.keys())
[`a`,`b`,`c`,`d`,`e`]
>>>del alphabet[`a`]
{`b`:1456,`d`:1453,`c`:2314,`e`:2345}
>>>alphabet[`e`]=3241
{`b`:1456,`d`:1453,`c`:3214,`e`:3241}
Dictionay ကconstructorလဲ ဲဆောက်လို့ရပါတယ် နောက်ပြီ keyword argument ကိုသုံးပြီး pair လုပ်လဲလွယ်ပါတယ်
>>>dict([(`a`:1245,`b`:1234,`c`:2345)])
{`a`:1245,`b`:1234,`c`:2345}
##########
Sign In or Register to comment.