Nattawut Phetmak
Jack of all Trades
Python คือภาษาโปรแกรมที่เน้นความสะอาด เรียบง่าย และเป็นหนึ่งเดียวกันของ syntax ทำให้โปรแกรมเมอร์คนหนึ่งๆ สามารถอ่านโปรแกรม Python คนอื่นแล้วเข้าใจได้อย่างรวดเร็ว มันจึงได้รับความนิยมอย่างมากในวงการศึกษา จนบางคนเปรียบเปรยว่ามันคือ pseudocode ที่บังเอิญทำงานได้
ที่มาของชื่อ Python นั้นมาจากรายการโทรทัศน์ Monty Python’s Flying Circus ครับ และถึงแม้ว่าทางผู้สร้างจะออกมายืนยันว่าชื่อนี้ไม่ได้มาจากงูอย่างแน่นอน แต่โลโก้ของมันดันเป็นรูปงู 2 ตัวซะหนิ
เราจะใช้ Python 3 เป็นหลักนะครับ
cmd.exe
มาสั่ง set path=%path%;C:\python32
apt-get install python3
ถ้าใช้ Ubuntu (หรือ OS อื่นในสาย Debian)alias python='python3'; alias python2='python2.7'
ลงในไฟล์ ~/.bashrc
เรียบร้อยแล้ว? งั้นก็ต้องลองเรียกโปรแกรมมาทักทายกันซักหน่อย
เรียก interactive shell ด้วยคำสั่ง python
ผ่านทาง Terminal กันเลย หลังจากเจอข้อความต้อนรับประมาณนี้
Python 3.2.2 (default, Sep 5 2011, 21:17:14)
[GCC 4.6.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
ลองพิมพ์คำสั่ง
>>> print('Hello, world!')
Hello, world!
แล้วกด [Enter]
ก็เป็นอันเสร็จสิ้นพิธี
เมื่อต้องการออกจาก interactive shell สามารถป้อน EOF ได้เช่นเดียวกับการออกโปรแกรมอื่นๆ หรือจะสั่ง
>>> exit()
ก็ย่อมได้ (คำสั่งนี้สามารถนำไปใช้ในโปรแกรม เพื่อบังคับให้จบการทำงานได้ด้วยเช่นกัน)
ส่วนการเขียนโปรแกรมเก็บไว้เรียกใช้ภายหลัง ให้ตั้งชื่อไฟล์ลงท้ายด้วย .py
เช่นไฟล์ hello.py
ที่มีคำสั่งข้างในดังนี้
print('Hello, world!')
และเรียกทดสอบโปรแกรมโดย
$ python hello.py
Hello, world!
ข้อแตกต่างของ interactive shell กับเขียนเก็บเป็นไฟล์ คือการเขียนหลายๆ บรรทัดใน interactive shell จะไม่สามารถมีบรรทัดว่างๆ ได้ และการเขียนหลายบรรทัดต้องจบด้วย 2 newline เท่านั้น
เราจะเลือกใช้ interactive shell สำหรับการทดสอบสั้นๆ โดยแต่ละบรรทัดที่เป็นคำสั่ง จะขึ้นต้นด้วยสัญลักษ์ >>>
(หรือ ...
ในกรณีมีหลายบรรทัด) และส่วนที่เป็นผลลัพท์จะไม่มีสัญลักษ์เหล่านี้ขึ้นต้นครับ (เช่นเดียวกับการทดสอบบน interactive shell)
นอกเหนือจากนั้นแล้ว จะใช้การเขียนเก็บเป็นไฟล์เมื่อโปรแกรมเริ่มซับซ้อนมากขึ้น มีรายละเอียดหลายบรรทัด โดยเราจะแนบ output ที่ควรได้รับไว้ใน comment ครับ
comment ใน Python จะใช้เครื่องหมาย #
นำหน้าข้อความที่ต้องการ comment ไปจนจบบรรทัด (ไม่มีระบบ comment หลายบรรทัด หรือ comment แบบไม่จบบรรทัดนะครับ)
# this is a comment.
x = 1 # this is also a comment.
print("hello # world")
# but this above sentence is not.
อย่างไรก็ตาม เครื่องหมาย #
ที่ปรากฏอยู่ภายใต้เครื่องหมาย quote นั้น ไม่นับเป็นการ comment ครับ
การ indent ใน Python ถือเป็นหัวใจสำคัญอันหนึ่ง (เพราะไม่มีระบบปีกกาเพื่อจบชุดคำสั่ง) แต่เนื่องจาก Windows และ Linux กำหนดขนาดของ tab กว้างไม่เท่ากัน เราจะใช้ 1 indent = 4 space ครับ (ตั้งค่าได้ใน editor)
อย่างไรก็ตาม ถ้าคุณทำงานคนเดียวหรือไม่ซีเรียสตรงนี้มาก จะใช้เครื่องหมาย tab เพื่อความสะดวกก็ได้ครับ แต่ พึงระลึก ไว้ว่า การใช้ space และ tab ปนกันเพื่อ indent จะทำให้ code ชุดนั้นเกิด error อย่างเช่น
IndentationError: unindent does not match any outer indentation level