อ่านและเขียนไฟล์ใน Python
โปรแกรมมักบันทึกข้อมูลลงไฟล์และอ่านกลับมา open() จะคืนค่าเป็น file object และ mode จะกำหนดว่าจะอ่าน เขียน หรือเพิ่มข้อมูล
อ่านและเขียนไฟล์ใน Python คืออะไร?
โปรแกรมมักบันทึกข้อมูลลงไฟล์และอ่านกลับมา open() จะคืนค่าเป็น file object และ mode จะกำหนดว่าจะอ่าน เขียน หรือเพิ่มข้อมูล
เขียน เพิ่ม และอ่านไฟล์ข้อความใน Python ด้วย open() และ with
ควรใช้เมื่อใด?
- เรียนรู้ไวยากรณ์ Python ผ่านโค้ดที่รันได้
- สร้างพื้นฐานสำหรับโจทย์ที่ซับซ้อนขึ้น
- ทดลองแนวคิดโดยไม่ต้องติดตั้งบนเครื่อง
โค้ดตัวอย่าง
# "w" creates the file (or empties it) and opens it for writing.
with open("notes.txt", "w") as file:
file.write("first line\n")
file.write("second line\n")
# "a" appends to the end of an existing file.
with open("notes.txt", "a") as file:
file.write("third line\n")
# "r" (the default) reads. read() returns the whole file as one string.
with open("notes.txt") as file:
print(file.read())
# Loop over a file to read it line by line.
with open("notes.txt") as file:
for number, line in enumerate(file, start=1):
print(number, line.strip())
# "with" closes the file automatically, even if an error happens.
ผลลัพธ์ที่คาดหวัง
first line
second line
third line
1 first line
2 second line
3 third line
หลักการทำงาน
"w" จะเขียนทับเนื้อหาเดิมของไฟล์, "a" จะเพิ่มต่อท้าย และ "r" ใช้อ่าน. บล็อก with จะปิดไฟล์ให้อัตโนมัติ แม้เกิดข้อผิดพลาด
เปลี่ยนค่าและรันโปรแกรมด้วย คอมไพเลอร์ Python ออนไลน์ของ CodeUtility โดยไม่ต้องติดตั้ง Python
แบบฝึกหัด
ลองเปลี่ยน input และทดสอบกรณีขอบก่อนใช้ชุดข้อมูลที่ใหญ่ขึ้น
- คาดเดา output ก่อนรัน
- รองรับ input ว่างหรือไม่ถูกต้อง
- แยก logic เป็นฟังก์ชันและเพิ่ม test case
ฝึกด้วยโจทย์
ใช้สิ่งที่เรียนในบทนี้แก้ปัญหาจริง ทุกโจทย์รันในเบราว์เซอร์ พร้อมการทดสอบทันทีและรีวิวจาก AI
โจทย์ทั้งหมด