วิชา หลกั การเขียนโปรแกรม 20204-2004
คาํ นํา Python คือช่อื ภาษาทีใ่ ชใ นการเขยี นโปรแกรมภาษาหนึ่ง ซึ่งถกู พฒั นาข้นึ มาโดยไมย ึดตดิ กับแพลตฟอรม กลา วคือสามารถรนั ภาษา Python ไดทง้ั บนระบบ Unix, Linux , Windows NT, Windows 2000, Windows XP หรอื แมแ ตระบบ FreeBSD อีกอยางหนงึ่ ภาษาตวั นีเ้ ปน OpenSource เหมือนอยา ง PHP ทาํ ใหท กุ คนสามารถท่ีจะนํา Python มาพฒั นาโปรแกรมของ เราไดฟรๆี โดยไมตองเสยี คาใชจ า ย และความเปน Open Source ทาํ ใหม ีคนเขามาชว ยกันพัฒนาให Python มีความสามารถสูงขน้ึ และใชง านไดค รบคุมกับทกุ ลักษณะงาน ไวยากรณของภาษา Python ภาษา Python นนั้ ถูกพฒั นาข้ึนมาโดยมีความต้ังใจวาจะใหเปนภาษาทีอ่ า นงา ย มันถูกออกแบบมาใหมีโครงสรา งทีม่ องเหน็ ไดโดยไมซ บั ซอ นี
สารบญั 4-8 9-11 โครงสรางของไพทอน 12 คําสงวน 13 การต้ังช่ือตัวแปรในภาษา Python 14-19 การประกาศตวั แปร 20-25 การเขยี นโปรแบบไพทอน(แนะนําหนาตา งของการทํางานIDLE 26-31 มอื ใหมห ดั ใชง าน Python IDLE มอื ใหมหดั เขยี นโปรแกรม 32 ความผิดพลาดจากการเขียนโปรแกรม 33 การแสดงผลลัพททางหนาจอ 34 การรบั อนิ พุตทางคียบ อรด 35 สรปุ ทายบท ผจู ดั ทํา 36-38
โครงสรางของ ไทพอน เพอ่ื เริ่มตน การเรียนรูในภาษา Python มาดตู ัวอยา งของโปรแกรมอยางงาย โดย เปนโปรแกรมทถ่ี ามช่อื ผใู ชแ ละแสดงขอ ความทกั ทายทางหนา จอ มาเร่ิมเขยี น โปรแกรมแรกในภาษา Python ของคณุ ใหค ดั ลอกโปรแกรมขา งลางแลวนาํ ไป รันใน IDE
# My first Python program name = input('What is your name?\\n') print ('Hi, %s.' % name) print ('Welcome to Python.')
Simple Python program เพือ่ เริ่มตน การเรยี นรูใ นภาษา Python มาดูตัวอยางของโปรแกรมอยางงา ย โดยเปนโปรแกรมทถี่ ามชอื่ ผูใชแ ละแสดงขอความทักทายทางหนาจอ มาเรม่ิ เขยี นโปรแกรมแรกในภาษา Python ของคุณ ใหค ดั ลอกโปรแกรมขางลา งแลว นําไปรันใน IDE
ในตัวอยางเปน โปรแกรมในการรับช่อื และแสดงขอความทกั ทายออกทางหนา จอ ในการรัน โปรแกรมคุณสามารถรันไดห ลายวธิ ี แตท แี่ นะนําคือการใช Python shell ใหค ุณเปด Python shell ขน้ึ มาแลวกดสรางไฟลใ หมโดยไปท่ี File -> New File จะปรากฏกลอ ง Text editor ของภาษา Python ขนึ้ มา เพอื่ รนั โปรแกรม Run -> Run Module หรือกด F5 โปรแกรมจะเปลยี่ นกลบั ไปยัง Python shell และเริม่ ตน ทํางาน
Comment คอมเมนตในภาษา Python นน้ั เร่ิมตน ดว ยเครอื่ งหมาย # คอมเมนตสามารถเรม่ิ ตนท่ี ตาํ แหนง แรกของบรรทัดและหลังจากน้ันจะประกอบไปดว ย Whilespace หรอื โคดของ โปรแกรม
คาํ สงวน คือคาํ ที่ถกู ภาษาไพธอนใชเ้ พ่ือสร้างไวยากรณ์ ดงั น้นั ผเู้ ขียนโปรแกรมหา้ มนาํ ไปใชใ้ นการสร้างหรือ ประกาศเป็นตวั แปรโดยเดด็ ขาด เพราะจะทาํ ใหเ้ กิดขอ้ ผดิ พลาด คือ SyntaxError: invalidsyntax) เช่น ประกาศตวั แปร if = 5 เป็นตน้ สาํ หรับ คาํ สงวนในภาษาไพธอน ดงั ต่อไปน้ี
คือ and, assert, break, class, continue, def, del, elif, else, except, exec, finally, for, from, global, if, import, in, is, lambda, not, or, pass, print, raise, return, try, while, yield
คาํ ต่อไปน้ีแมว้ า่ ไพธอนไม่ไดห้ า้ มไวแ้ ต่กไ็ ม่ควรใชเ้ พราะไปตรงกบั ช่ือของฟังกช์ นั ในไพธอน คือ data, float, Int, numeric, Oxphys, array, close, int, input, open, range, type, write, zeros คาํ ต่อไปน้ีกค็ วรหลีกเล่ียงดว้ ย ถา้ มีการนาํ เขา้ (import) ไลบราร่ี math มาใชง้ าน คือ acos, asin, atan, cos, e, exp, fabs, floor, log, log10, pi, sin, sqrt, tan
การต้งั ชอ่ื ตัวแปรในภาษาไพธอน ขึ้นตนดว ยตัวอักษรภาษาองั กฤษ แลว ตามดว ยตัวอกั ษรหรอื ตัวเลขใดๆกไ็ ด หา มเวน ชอ งวาง และหามใชสญั ลกั ษณพ ิเศษนอกเหนือจาก underscore \"_\" เทาน้นั ตัวอกั ษรของชือ่ จะคํานึงถึงความแตกตา งระหวา งอกั ษรตวั พมิ พใ หญกบั ตวั พิมพเลก็ การต้ังชื่อมขี อ พึงระวังวา จะตองไม้ซํ้ากบั คาํ สงวน (Reserved word, Keyword) ควรจะตั้งชื่อโดยใหช ่ือนั้นมสี ือ่ ความหมายใหเขา กับขอ มูล สามารถอานและเขาใจได หา มใชเ คร่ืองหมายตอ ไปนี้ในการตัง้ ช่ือตัวแปร !,@, #, $, %, ^, &, *, (, ), -, =, \\, |, +, ~ ตัวแปรทีม่ ีพมิ พใ หญและตวั พมิ พเ ลก็ ผสมกนั จะมีความหมายตางกนั กับตัวพิมพเ ลก็ เพียงอยาง เดยี ว
การประกาศตวั แปร ตวั แปร (variable) เปนการกําหนดชนิดขอมลู ของตวั แปร เพื่อนําไปใชในการ เขียนโปรแกรม โดยทโี่ ปรแกรมภาษาไพธอนไปจองพน้ื ทใ่ี นหนว ยความจํา เพือ่ ใชเก็บขอ มลู ชนิดตาง ๆ แลวแตชนิดของตวั แปรที่ประกาศเอาไว อาจเปน ชนิด ตวั เลข ตวั อักขระ หรือสายอักขระ ขอ มลู ประเภทเหลานจ้ี ะถกู นาํ ไปอา งถงึ เม่อื เขียนคําสัง่ ไปอา งองิ ภาษาไพธอนมีการประกาศตวั แปรไมเ หมือนเหมือนภาษาซี หรือภาษาปาสกาล ดงั น้ี
วธิ ที ี่ 1 IDLE (Python GUI) ในโหมดน้ชี ว ยใหผ ูเ ขยี นโปรแกรมทํางานโตตอบกบั ภาษาไพธอน ไดโดยตรงเมื่อเขียนคําส่งั เสรจ็ ในหน่งึ ชุดคําสงั่ โปรแกรมจะเอก็ ซซีควิ ตท ันที มจี ดุ เดน ท่ีสขี องตวั อกั ษร และพรอ็ มพ โดยมเี ครือ่ งหมาย >>> แทนการรอ รับคําส่ัง ดงั ภาพ
วธิ ีที่ 2 โดยการเปด File > New window หรือกดปุม Ctrl+N จากหนา ตา ง Python GUI ของวิธีที่ 1 หลงั จากน้นั ใหพ มิ พคาํ สง่ั ตาง ๆ ลงไป เหมือนกบั อี ดเิ ตอรอ ่ืน ๆ ซง่ึ จะไมมสี ัญลกั ษณ prompt >>> อยดู า นหนาบรรทดั ดังภาพที่ 1.12
เมอื่ เขียนโปรแกรมเสรจ็ แลว ถาตอ งการท่จี ะจดั เก็บโปรแกรมทีเ่ ขียนลงสู Disk ใหคลิกเลอื กรายการ File เลือ่ นไปทีต่ ัวเลือก Save หรือกดปมุ Ctrl+S จะขน้ึ ได อะล็อกบ็อก ใหพ ิมพช ือ่ แฟม ท่ตี องการบันทึก ควรพมิ พชื่อนามสกลุ เปน .py ดวย ดงั แสดงในรปู ดานลางตอ ไปนี้
ข้ันตอนตอไปคอื การสั่ง Run โปรแกรมหรือการ execute เพ่อื ใหโปรแกรมประมวลผล คําสงั่ ใหไดผลลพั ธตามตองการ การสัง่ Run โดยการคลกิ เลอื กรายการ Run เลือกตวั เลอื ก Run Module หรอื กดปุมคยี ลัด F5 โปรแกรมจะเปด ไพธอน เชลล มาแสดงผลการทาํ งานดงั รูป
ในการขียนคําสง่ั ผูเขียนจะตองเขียนใหถกู ตองตามหลักไวยากรณ ของภาษาไพ ธอนทกุ ๆ กรณี การเขียนคาํ ส่งั ผดิ พลาดแมเพียงอกั ขระเดยี ว โปรแกรมไม สามารถจะ Run ไดแตโ ปรแกรมจะบอกตําแหนง ที่ผิดพลาด คอยแนะนาํ ใหผเู ขยี น ทราบวาผดิ ในสวนใดบาง จะแจง บรรทดั ท่ีเขียนผดิ ดงั รปู ภาพดา นลางตอ ไปน้ี
เร่มิ ตนการใช python เปน ภาษาของคอมพวิ เตอร ที่มีจดุ เดน ดงั น่ เปนภาษาท่ีมี syntax ท่ีเรยี บงา ยและสะอาด สามารถเรียนรไู ดง า ย เขา ใจไดง า ย สนบั สนุนการเขียนโปรแกรมแบบ OOP ทํางานแบบ interpreter dynamic code (ภาษาทไ่ี มตองกําหนด type ในการประกาศตวั แปร)เปน ภาษาทม่ี ี syntax ท่ี เรียบงายและสะอาด สามารถเรียนรไู ดง าย เขาใจไดงาย สนบั สนุนการเขียนโปรแกรมแบบ OOP ทาํ งานแบบ interpreter dynamic code (ภาษาท่ีไมตองกาํ หนด type ในการประกาศตวั แปร)
Windows เขา ไปที่ https://www.python.org/download/ ใหเ ลอื กดาวนโหลด รนุ ในสาย Python 3 ครบั แลว เลอื กใหต รงกับสเปคเครื่อง ตวั อยา งเชน เครอื่ งผมใช Windows 64 Bit ผมตอ งเลือก Python 3.4.1 Windows X86-64 MSI Installer ครับ เมื่อรันหนา ตา งตดิ ตงั้ ขึ้นมา อยา ลมื เลือก set path ดวย ครบั จะไดไ มตอ งมาเสยี เวลาตั้งคาภายหลงั โดยทาํ อยา งนค้ี รับ เริ่มตน ดวยการรันไฟลต ิดตง้ั ที่โหลดมา แลวทําตามรปู ครับ
เสร็จแลว กด Next ไปเรือ่ ย ๆ ครบั Linux สาํ หรับบน Ubuntu หรือ Linux ในสาย Debian คลิกท่ีนค่ี รบั Mac OS X เขา ไปท่ี https://www.python.org/download/ ครบั
ภาษา Python มหี ลายโปรแกรมครบั ผอู านสามารถใช IDLE (Python GUI)
แนะนาํ PyCharm ครบั เปน IDLE ทนี่ า ใชระดบั นง่ึ ครบั โหลดฟรีไดท ี่ http://www.jetbrains.com/pycharm/ เลอื กรนุ ทีเ่ ปน Community Edition ครับ
ภาษา Python โปรแกรมในภาษา Python ในพนื้ ฐานจนถงึ ระดบั สงู เราจะสอนเกี่ยวกบั การเขยี นโปรแกรมภาษา Python ในเบอ้ื งตน โครงสรา งของภาษา ตัวแปรและประเภทขอ มูล ตวั ดําเนินการ อาเรยและ ฟงกชนั และนอกจากนเ้ี รายงั ครอบคลมุ การเขียนโปรแกรมเชงิ วตั ถุ (OOP) ในภาษา Python บทเรียนของเราจะเปนการเขียนโปรแกรมบน Console และเปนแบบ Interactive shell เปนสวน มากและเราใช Python เวอรช ัน 3
ภาษา Python นน้ั สรางโดย Guido van Rossum และถกู เผยแพรครัง้ แรกในป 1991 Python นั้น เปนภาษาแบบ interprete ท่ีถกู ออกแบบโดยมีปรญั ชาทีจ่ ะทาํ ใหโ คดอา นไดง ายขนึ้ และโครงสรางของภาษาน้นั จะทาํ ใหโปรแกรมเมอรสามารถเขาใจแนวคดิ การเขียน โคดโดยใชบ รรทดั ท่นี อ ยลงกวาภาษาอยา ง C++ และ Java
Python นั้นมีคุณสมบัติเปนภาษาเขียนโปรแกรมแบบไดนามิกสแ ละมรี ะบบการจดั การหนวย ความจําอัตโนมัติและสนับสนนุ การเขียนโปรแกรมหลายรูปแบบ ทปี่ ระกอบไปดว ย การเขยี นโปรแกรมเชิงวัตถุ imperative การเขียนโปรแกรมแบบฟงกชนั และการ เขยี นโปรแกรมแบบขั้นตอน มันมไี ลบรารที่ ่คี รอบคลมุ การทาํ งานอยางหลากหลาย ตัวแปรในภาษา Python นน้ั มใี หใ ชในหลายระบบปฏิบตั กิ าร ทําใหโคดของภาษา Python สามารถรนั ในระบบตา งๆ
เปนการพฒั นาในข้นั ต้นั ของ Python ซึ่งเปนโปรแกรมแบบ open source และมี ชุมชนสาํ หรบั เปน ตนแบบในการพัฒนา เน่ืองจากมันไดม กี ารนาํ ไปพัฒนากระจาย ไปอยา งหลากหลาย CPython นั้นจึงถูกจดั การโดยองคก รไมแสวงหาผลกําไรอยาง Python Software Foundation
ภาษา Python นน้ั กาํ เนดิ ข้นึ ในปลายป 1980 และการพฒั นาของมนั นั้นเริ่มตนใน December 1989 โดย Guido van Rossum ท่ี Centrum Wiskunde & Informatica (CWI) ในประเทศ เนเธอรแ ลนด เนือ่ งในผูป ระสบความสําเร็จในการสรางภาษา ABC ที่มคี วามสามารถสําหรับ การ exception handling และการติดตอ ผสานกับระบบปฏบิ ัติการ Amoeba ซง่ึ Van Rossum น้นั เปน ผเู ขียนหลกั การของภาษา Python และเขาทาํ หนาเปน กลางในการ ตัดสนิ ใจสําหรบั ทศิ ทางการพัฒนาของภาษา Python
การเขยี นโปรแกรมทง้ั ในพ้ืนฐานท้งั หมดและในขั้นสงู ท่เี ปนการเขียนโปรแกรมแบบ เชงิ วตั ถุ เราจะพาคุณติดตง้ั ภาษา Python และแนะนําใหคณุ รจู กั กับเครอ่ื งมือท่ีใช ในการพฒั นาโปรแกรมอยางเชน IDLE ซงึ่ เนอื้ หาเหลา นเ้ี ปน พนื้ ฐานทีส่ ําคญั ทจี่ ะ ทําใหค ุณสามารถนําไปพัฒนาทักษะการเขยี นโปรแกรมภาษา Python ของคณุ ใน ขนั้ สูงตอ ไป เชน การพัฒนาเว็บไซต การสรา งเกม ฐานขอ มูล เน็ตเวริ ค การจดั การ กราฟฟค เปน ตน
ความผิดพลาดจากการเขยี นโปรแกรม ในการจัดการกบั Exception จะใชคําสง่ั try ... except สําหรบั ตรวจจับขอผิดพลาดท่ีจะ เกิดขน้ึ ในบลอ็ คของคําส่งั try จะเปนการทาํ งานทจ่ี ะทาํ ใหเกิดขอผิดพลาดขึน้ และเรา สามารถมบี ล็อคคาํ สงั่ except ไดห ลายอันเพอ่ื จดั การขอผิดพลาดประเภทตางๆ และถา หากคุณไมไดกาํ หนดประเภทใหก บั except หมายความวามนั สามารถจัดการกบั ขอผิด พลาดไดทุกประเภททีส่ บื ทอดมาจาดคลาส Exception นอกจากน้ี คณุ ยงั สามารถใช else clause ซ่งึ จะทํางานเมื่อไมเกิดขอผิดพลาดข้ึนในขณะท่ีโปรแกรมทาํ งานในบลอ็ คคําสั่ง try ตอ ไปมาดูตวั อยา งการจดั การขอผิดพลาดในภาษา Python
ในตัวอยา ง เปน โปรแกรมสําหรบั รบั คา ตวั เลขสองตัวจากทางคียบ อรด และแสดงผลหาร ใน บล็อคของคําสัง่ try เปนการรับคาตวั เลขและเกบ็ ใสตวั แปร a และ b ตามลําดบั เนอื่ ง ตองการแปลงคาทรี่ ับมาเปน ตวั เลขดว ยฟงกชัน int() ดงั นั้น เราตองมบี ล็อค except เพอ่ื จัดการกับขอผดิ พลาด ValueError ทีจ่ ะเกิดข้นึ เมื่อคาทีใ่ สเ ขามาน้ันไมไดเปน ตวั เลข
การแสดงผลขอ ความรวมกับตัวแปร การแสดงผลขอ ความรว มกบั ตัวแปร เปน การแสดงผลขอความหรอื อาจมี ฟงกช นั ทตี่ อ งการแสดงและมีตวั แปรทีไ่ ดจ ากการประมวลผลแสดงดวย เชน การแสดงผลขอความรวมกบั ตวั แปร การแสดงผลขอ ความรว มกบั ตัวแปร เปน การแสดงผลขอ ความหรืออาจมฟี งกชันท่ี ตอ งการแสดงและมีตวั แปรทไ่ี ดจากการประมวลผลแสดงดว ย เชน
การแสดงผลขอ ความรว มกับตัวแปร การแสดงผลขอ ความรวมกบั ตวั แปร เปน การแสดงผลขอความหรืออาจมฟี งกช ันท่ตี อ งการ แสดงและมตี ัวแปรที่ไดจากการประมวลผลแสดงดว ย เชน การแสดงผลขอ ความเชือ่ มขอ ความ การแสดงผลขอ ความเชื่อมขอ ความ ขอความนน้ั อาจจะเกบ็ เปน ตัวแปร หรือท่สี รา ง ขึ้นมาเอง สามารถเชื่อมคําดวยเครือ่ งหมายบวก (+) ดังตวั อยางตอไปนี้
นางสาว อรอนงค พบิ ลู ยส วสั ด์ิ เลขที่ 4 รหสั นกั ศกึ ษา 62202040054 หอ ง ปวช.½ แผนก คอมพิวเตอรธรุ กจิ
นางสาว พัชราภา แกวคาํ เลขที่ 13 รหสั นักศึกษา 62202040064 หอ ง ปวช.½ แผนก คอมพวิ เตอรธรุ กิจ
นางสาว ณัฐกานต ปล้ืมกระจาง เลขท่ี 40 รหัสนกั ศึกษา 62202040082 หอง ปวช.½ แผนก คอมพวิ เตอรธ รุ กจิ
รายวิชาหลกั การเขียนโปรแกรม (20204-2004) อาจารย วลิ าวัลย วชั โรทัย ตําแหนง ครูวทิ ยฐนะครูชํานาญการ แผนก คอมพิวเตอรธ รุ กิจ วทิ ยาลัยเทคนิคปทุมธานี E-mail [email protected]
เลขท่ี 79 หมู 5 ตําบล บานกลาง อําเภอ เมืองปทมุ ธานี ปทมุ ธานี 12000 แผนก คอมพวิ เตอร
Search
Read the Text Version
- 1 - 40
Pages: