Python - การเรียงลำดับเส้น

หลายครั้งเราจำเป็นต้องจัดเรียงเนื้อหาของไฟล์เพื่อการวิเคราะห์ ตัวอย่างเช่นเราต้องการให้นักเรียนแต่ละคนเขียนประโยคเพื่อจัดเรียงตามลำดับตัวอักษรของชื่อของพวกเขา ซึ่งจะเกี่ยวข้องกับการเรียงลำดับไม่ใช่ตามอักขระตัวแรกของบรรทัด แต่ยังรวมถึงอักขระทั้งหมดที่เริ่มจากทางซ้ายด้วย ในโปรแกรมด้านล่างก่อนอื่นเราอ่านบรรทัดจากไฟล์จากนั้นพิมพ์โดยใช้ฟังก์ชัน sort ซึ่งเป็นส่วนหนึ่งของไลบรารี python มาตรฐาน

การพิมพ์ไฟล์

FileName = ("path\poem.txt")
data=file(FileName).readlines()
for i in range(len(data)):
   print data[i]

เมื่อเรารันโปรแกรมข้างต้นเราจะได้ผลลัพธ์ดังต่อไปนี้ -

Summer is here.
Sky is bright.
Birds are gone.
Nests are empty.
Where is Rain?

การเรียงลำดับเส้นในไฟล์

ตอนนี้เราใช้ฟังก์ชันการเรียงลำดับก่อนพิมพ์เนื้อหาของไฟล์ เส้นจะถูกจัดเรียงตามตัวอักษรตัวแรกทางด้านซ้าย

FileName = ("path\poem.txt")
data=file(FileName).readlines()
data.sort()
for i in range(len(data)):
    print data[i]

เมื่อเรารันโปรแกรมข้างต้นเราจะได้ผลลัพธ์ดังต่อไปนี้ -

Birds are gone.
Nests are empty.
Sky is bright.
Summer is here.
Where is Rain?