อ็อบเจ็กต์ file มีชุดเมธอดการเข้าถึงที่ทำให้ชีวิตเราง่ายขึ้น เราจะเห็นวิธีใช้เมธอด read() และ write() เพื่ออ่านและเขียนไฟล์
เมธอด write()
เมธอด write() เขียนสตริงใดๆ ไปยังไฟล์ที่เปิดอยู่ สำคัญที่ต้องทราบว่าสตริง Python สามารถมีข้อมูลไบนารีได้ ไม่ใช่แค่ข้อความ
เมธอด write() ไม่เพิ่มอักขระ newline ('\n') ที่ท้ายสตริง:
ไวยากรณ์ (Syntax)
fileObject.write(string)
ที่นี่ พารามิเตอร์ที่ส่งคือเนื้อหาที่จะเขียนลงในไฟล์ที่เปิด
ตัวอย่าง
#!/usr/bin/python
# เปิดไฟล์
fo = open("foo.txt", "wb")
fo.write("Python is a great language.\nYeah its great!!\n")
# ปิดไฟล์ที่เปิด
fo.close()
เมธอดข้างต้นจะสร้างไฟล์ foo.txt และเขียนเนื้อหาที่กำหนดในไฟล์นั้นและสุดท้ายจะปิดไฟล์นั้น หากคุณเปิดไฟล์นี้ จะมีเนื้อหาดังนี้:
Python is a great language.
Yeah its great!!
เมธอด read()
เมธอด read() อ่านสตริงจากไฟล์ที่เปิดอยู่ สำคัญที่ต้องทราบว่าสตริง Python สามารถมีข้อมูลไบนารีได้ นอกจากข้อมูลข้อความ
ไวยากรณ์ (Syntax)
fileObject.read([count])
ที่นี่ พารามิเตอร์ที่ส่งคือจำนวนไบต์ที่จะอ่านจากไฟล์ที่เปิด เมธอดนี้เริ่มอ่านจากจุดเริ่มต้นของไฟล์ และถ้า count หายไป จะพยายามอ่านมากที่สุดเท่าที่จะเป็นไปได้ อาจจะจนถึงสิ้นสุดไฟล์
ตัวอย่าง
ลองใช้ไฟล์ foo.txt ซึ่งเราสร้างไว้ข้างต้น
#!/usr/bin/python
# เปิดไฟล์
fo = open("foo.txt", "r+")
str = fo.read(10)
print "Read String is : ", str
# ปิดไฟล์ที่เปิด
fo.close()
ผลลัพธ์ดังนี้:
Read String is : Python is