3.6 การจัดรูปแบบและตำแหน่งคำ
การจัดรูปแบบและตำแหน่งคำเป็นหนึ่งในสิ่งที่ภาษาไพธอนได้สร้างขึ้นมาเพื่อการจัดการแสดงผลทางจอภาพ
ซึ่งทำให้การเขียนโปรแกรมเพื่อจัดข้อความได้รวดเร็วและมีประสิทธิภาพมาก จะพบการใช้งาน
ในการจัดทำสารบัญของโปรแกรมไมโครซอฟต์เวิร์ด
ที่กำหนดให้มีจุดนำและหมายเลขบรรทัดบอกหน้าของบทในแต่ละบทโดยให้มีการจัดตัวเลขชิดขวา
เป็นต้น เมท็อดที่ใช้ในการจัดรูปแบบและตำแหน่ง ได้แก่ rjust() และ
ljust() โดยมี อาร์กิวเมนต์ดังนี้
exec(str [, globals [, locals]])
globals หมายถึง ตัวแปรภายนอก
การจัดเก็บข้อมูลที่มีลักษณะเชิงโครงสร้างข้อมูลที่เป็นจุดเด่นของภาษาไพธอน มีให้เลือกใช้หลายชนิดด้วยกัน เช่น ลิสต์ ทูเพิล และ ดิกชันนารี ทั้งสามลักษณะนี้ใช้สำหรับเก็บข้อมูลที่มีปริมาณมาก ๆ แต่สามารถเก็บเอาไว้ในตัวแปรเพียงชื่อเดียว ดังนั้น จึงมีกระบวนการสร้างข้อมูล การเพิ่ม ลบข้อมูล ตลอดจนการเข้าถึงข้อมูล เพื่อนำไปใช้งาน มีคำสั่งที่แตกต่างกัน ทั้งลิสต์ ทูเพิล และดิกชันนารี สิ่งที่มีความแตกต่างกัน ได้แก่ การสร้างลิสต์ จะให้ข้อมูลอยู่ภายใต้เครื่องหมาย ‘[’ และ ‘]’ ลิสต์สามารถเพิ่ม ลบ แทรกข้อมูลได้ ในขณะที่การสร้างโครงสร้างแบบทูเพิล จะให้ข้อมูลอยู่ภายใต้เครื่องหมาย ‘(’ และ ‘)’ แต่ไม่สามารถเพิ่ม ลบ แทรกข้อมูลได้โดยตรง ต้องเปลี่ยนเป็นชนิดลิสต์ก่อนแล้วจึงเพิ่มข้อมูลเข้าไป จากนั้นจึงเปลี่ยนเป็นชนิดทูเพิลตามเดิม เนื่องจากทูเพิลไม่สามารถเปลี่ยนแปลงข้อมูลได้ จึงทำงานได้เร็วกว่าประเภทลิสต์ การสร้างโครงสร้างแบบดิกชันนารีจะให้ข้อมูลอยู่ภายใต้เครื่องหมาย ‘{’ และ ‘}’ มีการเก็บข้อมูลเป็นคู่ ดังนั้นจึงเข้าถึงข้อมูลด้วยการระบุชื่อคีย์ โครงสร้างทุกรูปแบบจะกำหนดให้ข้อมูลแต่ละค่าถูกคั่นด้วยเครื่องหมาย ‘,’ สุดท้ายในเรื่องการจัดการกับข้อความ มีกระบวนหลายอย่างที่จำเป็นต้องใช้ ได้แก่ การเปรียบข้อความ การเชื่อมคำ การแยกคำ การค้นหาคำ การค้นหาและแทนที่ การตัดคำ และการจัดตำแหน่งคำ
rjust(width
[, fill])
ljust(width [, fill])
rjust หมายถึง จัดชิดขวา
width หมายถึง จำนวนความกว้าง
fill หมายถึง อักขระที่ต้องการใส่เข้าไป
ljust หมายถึง จัดชิดซ้าย
ให้พิจารณาจากตัวอย่างคำสั่งในภาพที่
3.20
>>> chapters = {1:5, 2:46, 3:52, 4:87, 5:90}
>>> for i in chapters :
print "Chapter " + str(i) +\
str(chapters[i]).rjust(30, '.')
Chapter
1.............................5
Chapter
2............................46
Chapter
3............................52
Chapter
4............................87
Chapter
5............................90
|
ภาพที่ 3.20 แสดงคำสั่งและผลลัพธ์การจัดรูปแบบและตำแหน่งคำ
8. การประมวลผลคำสั่งข้อความ
จุดเด่นอีกอย่างหนึ่งของภาษาไพธอน
ได้แก่ การสั่งให้ประมวลผลจากคำสั่งที่เป็นข้อความซึ่งภายในได้บรรจุคำสั่งเอาไว้ ด้วยการใช้ฟังก์ชัน exec() โดยมีอาร์กิวเมนต์ดังนี้
globals หมายถึง ตัวแปรภายนอก
locals หมายถึง ตัวแปรภายใน
ให้พิจารณาคำสั่งจากตัวอย่างในภาพที่
3.21
>>> teacher
= ['Somchai', 'Somsak', 'Somkid', 'Sompong']
>>> codeStr
= "for i in teacher : \
print 'Teacher = ' + i"
>>> areaStr
= "pi * (radius*radius)"
>>>
exec(codeStr)
Teacher = Somchai
Teacher = Somsak
Teacher = Somkid
Teacher = Sompong
>>> print
"Area of circle = " + str(eval(areaStr, \
{"pi" :3.14},
{"radius" : 10}))
Area of circle = 314.0 |
ภาพที่ 3.21 แสดงคำสั่งและผลลัพธ์การประมวลผลคำสั่งข้อความ
บทสรุปการจัดเก็บข้อมูลที่มีลักษณะเชิงโครงสร้างข้อมูลที่เป็นจุดเด่นของภาษาไพธอน มีให้เลือกใช้หลายชนิดด้วยกัน เช่น ลิสต์ ทูเพิล และ ดิกชันนารี ทั้งสามลักษณะนี้ใช้สำหรับเก็บข้อมูลที่มีปริมาณมาก ๆ แต่สามารถเก็บเอาไว้ในตัวแปรเพียงชื่อเดียว ดังนั้น จึงมีกระบวนการสร้างข้อมูล การเพิ่ม ลบข้อมูล ตลอดจนการเข้าถึงข้อมูล เพื่อนำไปใช้งาน มีคำสั่งที่แตกต่างกัน ทั้งลิสต์ ทูเพิล และดิกชันนารี สิ่งที่มีความแตกต่างกัน ได้แก่ การสร้างลิสต์ จะให้ข้อมูลอยู่ภายใต้เครื่องหมาย ‘[’ และ ‘]’ ลิสต์สามารถเพิ่ม ลบ แทรกข้อมูลได้ ในขณะที่การสร้างโครงสร้างแบบทูเพิล จะให้ข้อมูลอยู่ภายใต้เครื่องหมาย ‘(’ และ ‘)’ แต่ไม่สามารถเพิ่ม ลบ แทรกข้อมูลได้โดยตรง ต้องเปลี่ยนเป็นชนิดลิสต์ก่อนแล้วจึงเพิ่มข้อมูลเข้าไป จากนั้นจึงเปลี่ยนเป็นชนิดทูเพิลตามเดิม เนื่องจากทูเพิลไม่สามารถเปลี่ยนแปลงข้อมูลได้ จึงทำงานได้เร็วกว่าประเภทลิสต์ การสร้างโครงสร้างแบบดิกชันนารีจะให้ข้อมูลอยู่ภายใต้เครื่องหมาย ‘{’ และ ‘}’ มีการเก็บข้อมูลเป็นคู่ ดังนั้นจึงเข้าถึงข้อมูลด้วยการระบุชื่อคีย์ โครงสร้างทุกรูปแบบจะกำหนดให้ข้อมูลแต่ละค่าถูกคั่นด้วยเครื่องหมาย ‘,’ สุดท้ายในเรื่องการจัดการกับข้อความ มีกระบวนหลายอย่างที่จำเป็นต้องใช้ ได้แก่ การเปรียบข้อความ การเชื่อมคำ การแยกคำ การค้นหาคำ การค้นหาและแทนที่ การตัดคำ และการจัดตำแหน่งคำ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น