Basic Python : Block structure


ในการเขียนบทความที่มีรายละเอียดและยาวมาก เราจำเป็นต้องมีการจัดระเบียบรูปแบบเพื่อให้อ่านได้ง่ายขึ้น เช่น การแยกประโยค การแบ่งย่อหน้า การแบ่งเป็นบท ฯล เป็นต้น การเขียนชุดคำสั่งภาษาคอมพิวเตอร์ก็เช่นเดียวกันจำเป็นต้องการจัดระเบียบชุดคำสั่งในภาษา Python ใช้รูปแบบที่เรียกว่า block

Block ในภาษา Python หมายถึงกลุ่มของชุดคำสั่งที่เป็นส่วนหนึ่งของชุดคำสั่งทั้งโปรแกรม นึกภาพเดียวกับการต่อตัว LEGO ให้เป็นรูปทรงต่าง ๆ block ของชุดคำสั่ง Python เปรียบได้กับตัวต่อแต่ละตัว

Lego_Chicago_City_View_2001.jpg


Block ประกอบด้วยชุดคำสั่งอย่างน้อย 1 ชุดคำสั่งและอาจอยู่ในรูปแบบต่าง ๆ กัน เช่น module, class, function ,control statement , script file ฯล ในโครงสร้างที่ซับซ้อนอาจมี Block ซ้อนๆกันเป็นชั้น ๆ

การกำหนดขอเขตของแต่ละ block ในภาษา Python จะแตกต่างจากภาษา computer programming languages อื่น เช่น C หรือ Java จะใช้เครื่องหมาย { … } หรือ Pascal ใช้คำ begin ... end เป็นตัวกำหนด ในขณะที่ Python ใช้เครื่องหมายย่อหน้า (indentation) คือ space (ช่องว่าง) หรือ tab เป็นตัวกำหนด

ชุดคำสั่งที่อยู่ใน block เดียวกันจะต้องมีจำนวนเครื่องย่อหน้านำหน้าชุดคำสั่งเท่ากันหรือจะต้องมีย่อหน้าเดียวกันนั่นเอง พิจารณาภาพตัวอย่าง
 code_block2.png

ภาพนี้แสดงให้เห็นถึงโครงสร้างที่ประกอบด้วย block จำนวน 4 block ซ้อนกันอยู่ แต่ละ block จะมีสีแยกกัน ชุดคำสั่งที่อยู่ใน block สีเดียวกันจะมีย่อหน้าเดียวกัน หาก block นั้นซ้อนอยู่ภายใน block อื่นการย่อหน้าจะเป็นการเพิ่มจากย่อหน้าของ block ที่อยู่ครอบ block นั้นอยู่

code_block.png

จากภาพตัวอย่างที่สองจะสังเกตุเห็นเครื่องหมาย : ตรงท้ายชุดคำสั่งบางบรรทัด ตามหลักการ “Explicit is better than implicit” [https://www.python.org/dev/peps/pep-0020/#the-zen-of-python]  เพื่อบอกให้ทราบอย่างชัดเจนว่าชุดคำสั่งบรรทัดถัดไปจะเข้าสุู่ block code ใหม่ [http://markmail.org/message/ve7mwqxhci4pm6lw]

กล่าวโดยสรุปคือ โครงสร้างในการเขียนโปรแกรมด้วยภาษา Python ที่ต้องทราบมีสองเรื่องคือ
  1. การใช้ย่อหน้า ซึ่งสามารถใช้ได้ทั้ง วรรค (space) หรือ แท็บ (tab) แต่ไม่แนะนำให้ใช้ทั้งสองปะปนกันควรเลือกอันใดอันหนึ่ง
  2. ใช้เครื่องหมาย : เมื่อต้องการเข้าสู่ block ใหม่ (จะกล่าวถึงต่อไป)

Previous
Next Post »