การเขียนโปรแกรมเบอื้ งต้นด้วย ภาษา python ช้นั มธั ยมศึกษาปี ที่3 ครูฟารีดะห์ บากา
My Skill of Programming Language ความสามารถในดา้ นการเขียนโปรแกรม +Static Web : HTML, CSS , HTML5 +Dynamic : Microsoft : ASP, ASP.NET, VB, VB.NET XML WEB SERVICE JAVA , PHP , Python jQuery Mobile, PhoneGap +Database MySQL, MS ACCESS, MSSQL SERVER, Oracle
About python เกีย่ วกบั python Python is powerful... and fast; plays well with others; runs everywhere; is friendly & easy to learn; is Open. These are some of the reasons people who use Python would rather not use anything else. Source: http://www.python.org
About python เกย่ี วกบั python Source: http://www.python.org
Applications using python แอพพิเคชันท่ใี ช้ python The Python Package Index (PyPI) hosts thousands of third-party modules for Python. Both Python's standard library and the community-contributed modules allow for endless possibilities. Web and Internet Development Database Access Desktop GUIs Scientific & Numeric Education Network Programming Software & Game Development Source: https://www.python.org/about/apps/#web-and- internet-development
Python tools เครอ่ื งมือในการเขียน python PyDev – Run as Eclipse PyCharm – Run with JVM (Not free) Python for Visual Studio (2013, 2015) IDLE – Standard Installation Python
Example of Python ตวั อย่างการใช้งาน python SciPy – Data Science in Python WiPy – IoT using Python Pyro – Robot with Python Raspberry pi with Python for Robotics Python Education - Google
Python website เวบ็ ไซต์เกย่ี วกบั python http://www.programiz.com/python-programming/ http://www.pythonforbeginners.com/ https://developers.google.com/edu/python/ https://wiki.python.org/moin/SimplePrograms http://golfapipol.github.io/angularjs- th/lesson/lesson5.html http://www.python-course.eu/
การเขียนโปรแกรมเบอื้ งต้น ด้วยภาษา python Computer Programming with Python
Programming with Python การเขียนโปรแกรมดว้ ยภาษา python Part I – Basic of Python Syntax (ไวยากรณ)์ , Variable (ตวั แปร), Data type (ชนิดขอ้ มูล), Assignment (การกาหนดคา่ ), Operator (เครอื่ งหมายดาเนินการ) Part II – Control Statement (คาสง่ั ควบคมุ ) IF, ELIF, FOR , WHILE Part III – Function (การเขยี นฟั งกช์ นั ) Part IV – I/O File (การอา่ นและเขยี นไฟล)์
Part I – Basic of Python การเขียนโปรแกรมด้วยภาษา python Syntax (ไวยากรณ)์ โครงสร้างภาษา หรือ รูปแบบการเขียนของภาษาคอมพวิ เตอร์. >> a=3 >> b=5 >> print(“a+b = ”, a+b) #comment a+b = 8 >> a==b False
Part I – Basic of Python การเขียนโปรแกรมด้วยภาษา python Variables (ตวั แปร) เป็ นการตงั้ ชอื่ (name) เพอื่ ใชเ้ ก็บขอ้ มูลทตี่ อ้ งการรบั คา่ ประมวลผล หรอื ใชแ้ ทนคา่ ใดๆ >> a=3 >> b=5 >> c=b >> b=8 >> print(“a=”,a,”,b=”,b,”c=”,c) a= 3 ,b= 8 c= 5
Part I – Basic of Python การเขยี นโปรแกรมดว้ ยภาษา python Variables (ตวั แปร) กฏการตงั้ ชอื่ ตวั แปร ขนึ้ ตน้ ดว้ ยตวั อกั ษรภาษาองั กฤษหรอื เครอื่ งหมาย _ เทา่ นั้น ไม่ใชอ้ กั ขระพเิ ศษเชน่ $ @ ! ไม่ใชค้ าสงวนเชน่ print, def, return
Part I – Basic of Python การเขียนโปรแกรมด้วยภาษา python Data type (ชนิดขอ้ มูล) String หรอื ขอ้ ความ สายอกั ขระ เชน่ “Mr.Tongpool Heeptaisong 123456” Integer หรอื ตวั เลขจานวนเต็ม บวกและลบ เชน่ 123, -1, 0 , 4, -4 Floating Point หรอื เลขจานวนจรงิ ทมี่ ที ศนิยม เชน่ 3.14, 3.00, -4.67, 9.9 Boolean หรอื ขอ้ มูลทเี่ ป็ นจรงิ (True) หรอื เท็จ (False) Complex: 3 + 2j, 1j Lists: l = [1,2,3] Tuples: t = (1,2,3) Dictionaries: d = {‘hello’ : ‘there’, 2 : 15}
Part I – Basic of Python การเขยี นโปรแกรมด้วยภาษา python Data type (ชนิดขอ้ มูล) >> a=3 >> b=5.5 >> c=b >> b=8 >>d=3a+b >> s=“Hello” >> print(“a+a = ”,a+a) ?? >> a+a = 6 >> print(“a+b = ”,a+b) ?? >> a+b = 8.5 >> print(“a+c = ”,a+c) ?? >> a+c = 11 >> 41 >> print(d) ?? >> a+s =3Hello >> print(“a+s = ”, a+s) ??
Part I – Basic of Python การเขียนโปรแกรมด้วยภาษา python Data type (ชนิดขอ้ มูล) >> l=[1,2,3,4] #list likes array, You can used l[0-n-1], >> print(l) #print all values >> print(l[0]) #index start=0 >> print(l[3]) #index end =n-1 >> months = ('January','February','March','April','May','June',\\ 'July','August','September','October','November',' December') >> print(months) #print all values >> print(months[0]) #index start=0 >> print(months[3]) #index end =n-1
Part I – Basic of Python การเขียนโปรแกรมด้วยภาษา python Data type (ชนิดขอ้ มูล) #Data type - Dictionary{} >> phonebook = {'Tong':8806336, \\ 'Dee':6784346, 'Peter':7658344, \\ 'Lame':1122345} >> print(phonebook) #Add the person 'Man' to the phonebook: >> phonebook['Man'] = 1234567 >> print(phonebook) >> phonebook['Lex'] = 7989878 >> print(phonebook) #Delete 'Lex' from the phonebook: >> del phonebook['Lex'] >> print(phonebook)
Part I – Basic of Python การเขียนโปรแกรมดว้ ยภาษา python Assignment (การกาหนดคา่ ใหก้ บั ตวั แปร) #จะใชเ้ ครอื่ งหมายเทา่ กบั >> a=3 >> b=5.5 #กาหนดให้ b=5.5 เป็ นชนิดเลขจานวนจรงิ >> c=b >> b=8 >> s=“Hello”
Part I – Basic of Python การเขยี นโปรแกรมด้วยภาษา python Operator (ตวั ดาเนินการ) + บวก a+b - ลบ a-b * คูณ a*b / หาร a/b ** ยกกาลงั a**a % หารเอาเศษ a%b
Part I – Basic of Python การเขียนโปรแกรมดว้ ยภาษา python Sample – ตวั อยา่ ง >> a=input(“Please input number 1”) >> b=input(“Please input number 2”) >> a+b >> a-b >> a*b >> a/b >> a**b >> a%b >> -a >> -a-b ** input เป็ นฟั งกช์ นั ทรี่ บั คา่ จากแป้ นพมิ พ ์ (Keyboard) ซงึ่ ตวั ภาษาจะมองวา่ เป็ น ชนิดขอ้ มูล String เราตอ้ งแปลง String เป็ น Integer ดว้ ยการเพมิ่ คาสง่ั a = int(input(“Please input number 1”))
Part I – Basic of Python การเขียนโปรแกรมด้วยภาษา python Sample – ตวั อย่าง >>a=2 >>b=3 >>c=5 >>(a+b+c) –a+b+c**c/c # มคี า่ เท่าไหร่ >>(2+3+5) –2+3+5**5/5 # มคี า่ เทา่ ไหร่ 10-2+3+125/5 10-2+3+25 /////// 10-30 ///-20 ** ลาดบั การประมวลผล 1. () 2. ** 3. *, / 4. +, -
Part I – Basic of Python การเขยี นโปรแกรมด้วยภาษา python Math function - ฟั งกช์ นั เกยี่ วกบั คณิตศาสตร ์ >>import math >>a=16 >>math.pi >>math.sqrt(a) >>math.factorial(a) >>help(math)
Part I – Basic of Python การเขียนโปรแกรมด้วยภาษา python ฟังกช์ นั ความหมาย fabs(x) คืนค่าสมั บรู ณข์ อง x sin(x), cos(x), ฟังกช์ นั ตรีโกณมติ ิของ x (มุมเป็ นหน่วย tan(x) เรเดียล) pi คา่ พาย e ค่า e log(x),log10(x) ค่า log ฐานธรรมชาติ, ค่า log ฐาน 10 exp(x) ค่า ex sqrt(x) รากที่สองของ x
Part I – Basic of Python การเขียนโปรแกรมดว้ ยภาษา python แบบฝึ กหดั 1) เขยี นโปรแกรมคานวณหาพนื้ ทขี่ องวงกลม 1.1 รบั คา่ รศั มี (r) จาก keyboard 1.2 นาคา่ r ทไี่ ดไ้ ปคานวณในสูตร area_circle = r**2 * math.pi 2) เขยี นโปรแกรมคานวณหาพนื้ ทสี่ ามเหลยี่ ม 2.1 รบั คา่ h และ w จาก keyboard 2.2 นาคา่ h และ w ทไี่ ดไ้ ปคานวณในสูตร area_triangle = ½*w*h
Programming with Python การเขยี นโปรแกรมดว้ ยภาษา python Part I – Basic of Python Syntax (ไวยากรณ)์ , Variable (ตวั แปร), Data type (ชนิดขอ้ มูล), Assignment (การกาหนดคา่ ), Operator (เครอื่ งหมายดาเนินการ)
Part II – Control Statement คาส่ังควบคมุ Part II – Control Statement (คาสง่ั ควบคมุ ) IF, ELIF, FOR , WHILE เครือ่ งหมาย ชื่อ ความหมาย ตวั อย่าง ผลลพั ธ์ < Less than น้อยกวา่ $a<$c False $a<$d True > Greater than มากกวา่ False $a>$c False <= Less than or น้อยกวา่ หรอื เทา่ กบั $a>$d True equal to True $a<=$c True >= Greater than or มากกวา่ หรอื เทา่ กบั $a<=$d False equal to $a>=$c $a>=$d
Part II – Control Statement คาสงั่ ควบคุม Part II – Control Statement (คาสง่ั ควบคมุ ) IF, ELIF, FOR ,WHILE เครื่องหมาย ชื่อ ความหมาย ตวั อยา่ ง ผลลพั ธ์ == Equal เทา่ กบั $a==$b True === Identical เหมอื นกนั $a==$c True $a==$d False != Not equal ไมเ่ ทา่ กบั $a===$b True <> Not equal ไมเ่ ทา่ กบั $a===$c False $a===$d False $a!=$c False $a!=$d True $a<>$c False $a<>$d True
Part II – Control Statement คาสง่ั ควบคมุ Part II – Control Statement (คาสง่ั ควบคมุ ) เครื่องIหFม,ายELIF, ชSื่อWITCH, FORคว,ามDหOมาย, DO WHILE,ตวั WอยH่าง ILE ผลลพั ธ์ ! Not คนื คา่ True ถา้ ตวั แปรเป็น False !$a False คนื คา่ False ถา้ ตวั แปรเป็น True && And คนื คา่ True ถา้ เป็นจรงิ ทงั้ 2 คา่ $a && $b False กรณอี น่ื ๆ คนื คา่ False and And คนื คา่ True ถา้ เป็น True ทงั้ 2 คา่ $a and $b True กรณอี น่ื ๆ คนื คา่ False True || Or คนื คา่ Falseถา้ เป็นFalseทงั้ 2 คา่ $a || $b True กรณอี ่นื ๆ คนื คา่ True or Or คนื คา่ Falseถา้ เป็นFalseทงั้ 2 คา่ $a or $b True กรณอี น่ื ๆ คนื คา่ True
Part II – Control Statement คาสง่ั ควบคุม IF, IF ELIF เทจ็ เง่ือนไข จริง #EXAMPLE 1 คาสั่งต่าง ๆ เมื่อ y=1 เง่ือนไขเป็ นจริง if y == 1: print(\"y still equals 1“) คาสั่งถดั ไป
Part II – Control Statement คาส่งั ควบคุม IF, IF ELIF #EXAMPLE 2 IF ELIF เทจ็ จริง z = 70 เง่ือนไข if z > 70: คาสั่งต่าง ๆ เมื่อ เง่ือนไขเป็ นจริง print(\"Something is very wrong\") elif z < 70: คาสั่งต่าง ๆ เมื่อ print(\"This is normal\") เง่ือนไขเป็ นเทจ็ คาส่ังถดั ไป
Part II – Control Statement เง่ือนไข 1 เทจ็ จริง คาสงั่ ควบคมุ IF, IF ELIF เทจ็ จริง คาส่ังต่าง ๆ เม่ือ เง่ือนไข 2 เงื่อนไข 1 เป็ นจริง #EXAMPLE 3 IF ELIF import math เทจ็ เง่ือนไข 3 จริง คาสั่งต่าง ๆ เม่ือ x = 30 เง่ือนไข 2 เป็ นจริง if x <= 15: y = x + 15 elif x <= 30: คาส่ังต่าง ๆ เมื่อ y = x + 30 เงื่อนไข 3 เป็ นจริง else : y=x print(\"y = \",math.sin(y)) คาสั่งถดั ไป
Part II – Control Statement คาสง่ั ควบคมุ While LOOP #EXAMPLE 1 a=0 while a < 10: a=a+1 เทจ็ เง่ือนไข จริง print(a) คาสั่งถดั ไป คาสั่งต่าง ๆ เม่ือเง่ือนไข เป็ นจริง
Part II – Control Statement คาส่งั ควบคุม While LOOP #EXAMPLE 2 #Type this in, see what it does x = 10 while x != 0: print(\"wow, we've counted x down, and now it equals\", x) x=x-1 print(\"And now the loop has ended.\")
Part II – Control Statement คาส่งั ควบคมุ FOR LOOP #EXAMPLE 1 for letter in 'Python': print('Current Letter :', letter) fruits = ['banana', 'apple', 'mango'] for fruit in fruits: print('Current fruit :', fruit) print(\"Good bye!\")
Part II – Control Statement คาสงั่ ควบคุม FOR LOOP #EXAMPLE 3 for num in rang(10,20): #Loop 10-19 print(num) print(\"Good bye!\")
Part II – Control Statement คาสง่ั ควบคุม แบบฝึ กหดั จงคน้ หาขอ้ มลู ทอี่ ย่ใู น list ตอ่ ไปนีจ้ าก keyboard l=[\"สรพงษ\"์ ,\"เอกชยั \",\"เอกภพ\",\"มาก\"]
Programming with Python การเขียนโปรแกรมด้วยภาษา python Part I – Basic of Python Syntax (ไวยากรณ)์ , Variable (ตวั แปร), Data type (ชนิดขอ้ มูล), Assignment (การกาหนดคา่ ), Operator (เครอื่ งหมายดาเนินการ) Part II – Control Statement (คาสง่ั ควบคมุ ) IF, ELIF, FOR , WHILE Part III – Function (การเขยี นฟั งกช์ นั ) Part IV – I/O File (การอา่ นและเขยี นไฟล)์
Part III – Function ฟงั กช์ ัน Function คอื โปรแกรมย่อย (Sub Program) ทมี่ กี ารทางานบางอยา่ ง บางครง้ั อาจมกี ารสง่ คา่ (Passing) บางอยา่ งไปหรอื ไม่มกี ็ได ้ Function อาจมกี ารทางานเสรจ็ ในตวั เอง หรอื อาจจะมกี ารสง่ คา่ กลบั มาก็ได ้ Function เป็ นการกระโดดจากบรรทดั ทที่ างาน อยู่ไปหาโปรแกรมย่อยทเี่ รา เรยี กใชง้ าน จากนั้นจะกระโดดกลบั มาทบี่ รรทดั ถดั ไป เมอื่ มกี ารทางานทโี่ ปรแกรม ยอ่ ยเสรจ็ แบง่ ไดเ้ ป็ น 2 ประเภทคอื Function เป็ น Function ทมี่ มี ากบั Compiler จะถกู บรรจไุ วใ้ น library file math.pi, math.sqrt() Function ทเี่ ขยี นขนึ้ เอง
Part III – Function ฟงั กช์ นั คาส่ัง ชื่อฟังก์ช่ัน อาร์กวิ เมนท์ def cal_area (width , height) : คาสั่งในฟังก์ช่ัน area = width * height return area คาส่ังทว่ั ไป x = int(input(‘width : ‘) y = int(input(‘height : ‘) area = cal_area(x,y) print area
Part III – Function ฟงั กช์ ัน Function #EXAMPLE 1 def print_data(): b = input(\"Enter data: \") print(\"Data is \",b) print_data()
Part III – Function ฟงั กช์ นั Function #EXAMPLE 2 def print_data(data): print(\"Data is \",data) b = input(\"Enter data: \") print_data(b)
Part III – Function ฟังก์ชัน Function and Return value #EXAMPLE 3 def maxval(num1,num2): if num1 > num2: return num1 else: return num2 x = input(\"Enter number 1: \") y = input(\"Enter number 2: \") print(maxval(x,y))
Part III – Function ฟังก์ชนั Recursive Functions คอื การเรยี กฟั งกช์ นั ตวั มนั เองซา้ ๆ #EXAMPLE 4 #n! = n * (n-1)!, if n > 1 and f(1) = 1 def factorial(n): if n == 1: return 1 else: return n * factorial(n-1) n = int(input(\"Input n:\")) print(\"Factorial \",n,\" is \", factorial(n))
Part III – Function ฟังกช์ ัน Recursive Functions #EXAMPLE 5 #Fn = Fn-1 + Fn-2 , F0 = 0 and F1 = 1 def fib(n): if n == 0: return 0 elif n == 1: return 1 else: return fib(n-1) + fib(n-2) n = int(input(\"Input n:\")) print(“Fibonacci \",n,\" is \", fib(n))
Part III – Function ฟังกช์ นั แบบฝึ กหดั จงเขยี นเป็ น function 1) เขยี นโปรแกรมคานวณหาพนื้ ทสี่ ามเหลยี่ ม b = read_base() #รบั คา่ จาก keyboard h = read_height() #รบั คา่ จาก keyboard a = compute_area(b,h) #คานวณ print(a)
Part III – Function ฟงั ก์ชัน แบบฝึ กหดั จงเขยี นเป็ น function 2) เขยี นโปรแกรมเครอื่ งคดิ เลขโดยรบั คา่ จาก Keyboard add(x, y) #+ subtract(x, y) #- multiply(x, y) #* divide(x, y) #/ # take input from the user print(\"Select operation.\") print(\"1.Add\") print(\"2.Subtract\") print(\"3.Multiply\") print(\"4.Divide\")
Programming with Python การเขียนโปรแกรมด้วยภาษา python Part I – Basic of Python Syntax (ไวยากรณ)์ , Variable (ตวั แปร), Data type (ชนิดขอ้ มูล), Assignment (การกาหนดคา่ ), Operator (เครอื่ งหมายดาเนินการ) Part II – Control Statement (คาสง่ั ควบคมุ ) IF, ELIF, FOR , WHILE Part III – Function (การเขยี นฟั งกช์ นั ) Part IV – I/O File (การอา่ นและเขยี นไฟล)์
Part IV – Input/Output Files การอ่านและเขียนไฟล์ file = open(‘data’, ‘r’) Open the file ‘data’ for input file.read() Read whole file into one file.read(N) String file.readline() Reads N bytes (N >= 1) Returns a list of line strings
Part IV – Input/Output Files การอา่ นและเขยี นไฟล์ file = open(‘data’, ‘w’) Open the file ‘data’ file.write(S) for writing file.writelines(L) file.close() Writes the string S to file Writes each of the strings in list L to file Closes the file
Part IV – Input/Output Files การอา่ นและเขียนไฟล์ #Mode File #'r' when the file will only be read #'w' for only writing (an existing file with the same name will be erased) #'a' opens the file for appending; any data written to the file is automaticallyadded to the end. #'r+' opens the file for both reading and writing.
Search