7.1 การเปิดไฟล์ในภาษา Python
ในการเขียนโปรแกรม ไฟล์ (File) คือสิ่งที่ใช้สำหรับเก็บข้อมูลบนคอมพิวเตอร์ในหน่วยเก็บข้อมูล คอมพิวเตอร์มีไฟล์หลากหลายประเภทขึ้นอยู่กับวัตถุประสงค์การใช้งานของมัน โดยทั่วไปแล้วไฟล์จะแบ่งออกเป็น 2 รูปแบบคือ Text file และ Binary file โดย Text file จะเก็บไฟล์ในรูปแบบของชุดตัวอักษรหรือข้อความที่มนุษย์สามารถอ่านเข้าใจได้ ในขณะที่ Binary file เก็บข้อมูลในรูปแบบ Binary form สำหรับคอมพิวเตอร์เพื่อทำงาน ในบทนี้ เราจะพูดถึงการทำงานกับไฟล์เบื้องต้นในภาษา Python
ก่อนที่จะเริ่มทำงานกับไฟล์ สิ่งแรกที่เราต้องทำก็คือต้องเปิดไฟล์ขึ้นมาก่อน ในภาษา Python ใช้ฟังก์ชัน open() สำหรับเปิดไฟล์เพื่อวัตถุประสงค์ที่ต้องการ โดยฟังก์ชันสามารถเปิดเพื่อทำงานได้กับทั้ง Text file และ Binary file นี่เป็นรูปแบบของการใช้งานฟังก์ชันเพื่อเปิดไฟล์
f = open(filename, mode)
โดยที่ filename เป็นชื่อหรือ Path ของไฟล์ที่ต้องการเปิด และ mode เป็นโหมดสำหรับเปิดไฟล์ เช่น เปิดไฟล์เพื่อการอ่านหรือการเขียน เป็นต้น เมื่อการเปิดไฟล์สำเร็จ ฟังก์ชันจะส่งไฟล์ออบเจ็คกลับมาเพื่อนำไปใช้ในการอ่านและเขียนไฟล์ต่อไป
r
w
a
r+
w+
a+
b
เปิดไฟล์เพื่ออ่านข้อมูลจากไฟล์
เปิดไฟล์เพื่อเขียนข้อมูลลงบนไฟล์
เปิดไฟล์เพื่อเขียนข้อมูลต่อท้ายไฟล์เดิม
เปิดไฟล์เพื่ออ่านและเขียนข้อมูล
เปิดไฟล์เพื่ออ่านและเขียนข้อมูล ถ้าหากมีไฟล์เดิมอยู่โปรแกรมจะเขียนทับ
เปิดไฟล์เพื่อเขียนข้อมูลต่อท้ายและอ่านข้อมูลจากไฟล์ ถ้าหากไม่มีไฟล์อยู่จะสร้างไฟล์ใหม่
เปิดไฟล์ใน Binary mode เช่น rb wb ab rb+ wb+ หรือ ab+
โดยปกติแล้วในการทำงานกับไฟล์สามารถมีข้อผิดพลาดเกิดขึ้นได้ และนั่นจะทำให้โปรแกรมหยุดการทำงานในทันที ส่งผลให้ File object ไม่ถูกปิดอย่างถูกต้อง ในภาษา Python เราสามารถใช้งานไฟล์กับคำสั่ง with เพื่อยืนยันว่า File object จะถูกปิดการใช้งานเสมอไม่ว่าจะเกิดข้อผิดพลาดหรือไม่ก็ตาม นี่เป็นตัวอย่าง
with open(filename, mode) as f:
# file operations