Python พื้นฐานสำหรับงาน Automation ตอน ที่1

 

PYTHON

สอน Python GUI เบื้องต้น ตอนที่ 1 - สร้างหน้าจอ - YouTube


ในตอนนี้ Python ถือว่าเป็นหนึ่งในภาษายอดนิยม
ในบทความนี้จะพูดถึง พื้นฐานการเขียน Python ซึ่งจะเน้นที่เวอร์ชั่น 3 เป็นหลัก

Running Mode

สำหรับภาษา Python นั้นเป็นภาษาแบบ interpreter ซึ่งทำให้เรารันโปรแกรมได้ 2 รูปแบบคือ

terminal

เป็นการรัน Python ใน terminal หรือ command-line ซึ่งจะเป็นการพิมพ์คำสั่งทีละคำสั่ง โดยไม่ต้องสร้างไฟล์ .py ขึ้นมา
วิธีการใช้คือรันคำสั่ง python หลังจากนั้นก็จะเป็น terminal ของ Python เด้งขึ้นต่อมาให้พิมพ์โค้ดได้เลย
ส่วนใหญ่จะเอาไว้เทสโค้ดหรือทดสอบอะไรเล็กๆ น้อยๆ เน้นความเร็วซะมากกว่าเขียนโปรแกรมจริงจัง

file

วิธีที่ 2 ส่วนใหญ่จะใช้กับการเขียนโปรแกรมแบบปกติ จะต้องเขียนโค้ดในไฟล์นามสกุล .py ของ Python ส่วนวิธีการรันโปรแกรมจะใช้คำสั่งเหมือนกับโหมด terminal แต่ต้องเพิ่มชื่อไฟล์ตามหลังด้วย เช่น python main.py เป็นต้น
หรืออีกวิธีคือใช้ IDE สำหรับเขียน Python โดยเฉพาะเช่น PyCharm Anaconda, หรือ Canopy  ซึ่งโปรแกรมพวกนี้สามารถรันได้ในตัวเองอยู่แล้ว

Input/Output

การรับค่าในภาษา Python จะใช้คำสั่ง input() ส่วนการปริ๊นค่าออกมาจะใช้คำสั่ง print() ซึ่งในจุดนี้สำหรับ python2 และ python3 จะเขียนต่างกันพอสมควรเลย
สำหรับ python2 การรับค่าที่เป็นตัวเลขจะใช้ input() ธรรมดาส่วนถ้าอยากได้ค่าเป็น string จะใช้ต้อง raw_input() แทน
ส่วน python3 จะเหลือแค่ input() ตัวเดียวซึ่งให้ค่าเป็น string เสมอ แต่ถ้าอยากได้เป็นตัวเลข ก็สามารถ cast string ให้เป็น int หรือตัวแปรชนิดอื่นๆ ได้ด้วยคำสั่งพวก int() และ float()
ส่วนการ print ก็ต่างกันเช่นกัน แบบนี้

นั่นคือใน python2 นั้น print จะถือว่าเป็นคำสั่งประเภทนึง แต่ใน python3 นั้นจะถือว่า print() นั้นเป็นฟังก์ชัน ดังนั้นต้องใส่ ( ) ทุกรอบ

Comment

มีสองแบบคือ
  • inline
  • block

Variable

ตัวแปรในภาษา Python เป็นแบบ dynamic-type คือสามารถเป็น value ได้ทุกชนิดโดยไม่ต้องกำหนดประเภทของชนิดข้อมูล (ไม่เหมือนพวกภาษา C, Java ที่ต้องกำหนดตัวแปรเช่น int x สำหรับเก็บจำนวนเต็มโดยเฉพาะ)
Data Type หลักๆ ของ Python มี
  • int   - จำนวนเต็ม เช่น 1, 200, 1024
  • float - ทศนิยม เช่น 12.34, 3.1416
  • str   - ตัวอักษรและอักขระ ในภาษานี้ไม่ได้แยกเป็น char เป็นนับรวมๆ เป็นตัวอักษรทั้งหมดเลย เช่น "Tamemo.com" หรือ "This is a book" (ใช้ได้ทั้งแบบ "..." double-quote และแบบ '...' single-quote)
  • bool  - ค่าความจริงซึ่งมีแค่ 2 ค่าเท่านั้นคือ True / False
  • None  - มีค่าคล้ายๆ กับค่า null หรือ nil ในภาษาอื่น คือค่าที่ไม่มีค่าใดๆ (แต่จะทำให้ตัวแปรเกิดขึ้นได้ ใช้กับกรณีที่ต้องการให้ตัวแปร ซึ่งฐานนะของตัวแปรตัวนั้นจะต่างจากตัวแปรที่ยังไม่ได้กำหนดค่ามาก่อนที่เป็น undefined)
เนื่องจากภาษา Python เป็นภาษาแบบ interpreter เลยไม่มีปัญหากับการจองขนาดหน่วยความจำ (เพราะยังไงก็ต้องคำนวนตำแหน่งหน่วยความจำแบบ pointer อยู่แล้ว) ตัวแปรประเภทตัวเลขเลยสามารถเก็บกี่หลักก็ได้ไม่มีปัญหาแบบภาษาตระกูล C ที่ต้องกำหนดขนาดของตัวเลขให้ชัดเจนว่าใช้กี่ byte ในภาษานี้เลยแบ่งเป็นแค่ int กับ float ก็เพียงพอแล้ว

ความคิดเห็น