0Pricing
Python Academy · บทเรียน

การเปิดและอ่านไฟล์

เปิดไฟล์ข้อความและอ่านเนื้อหาด้วย read และ readlines

การเปิดและอ่านไฟล์ เป็นบทเรียน Python Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Python Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน

บทนำ

ฟังก์ชัน open() ในตัวของ Python ช่วยให้เข้าถึงระบบไฟล์ได้ การอ่านไฟล์ทีละบรรทัดใช้หน่วยความจำอย่างมีประสิทธิภาพสำหรับข้อมูลขนาดใหญ่

พื้นฐาน open()

f = open('file.txt', 'r') จะเปิดไฟล์ในโหมดอ่าน โหมดต่าง ๆ ได้แก่ 'r' อ่าน, 'w' เขียน, 'a' ต่อท้าย และ 'b' ไบนารี
# f = open('data.txt', 'r')
# content = f.read()
# f.close()
print('open demo')

เมธอด read()

f.read() จะอ่านไฟล์ทั้งหมดเป็นสตริงเดียว เหมาะสำหรับไฟล์ขนาดเล็ก แต่ควรหลีกเลี่ยงกับไฟล์ขนาดหลาย GB
# content = open('data.txt').read()
print('read demo')

readlines()

f.readlines() จะคืนค่ารายการของบรรทัด โดยแต่ละบรรทัดลงท้ายด้วย \n จำเป็นต้องตัดส่วนเกินออกด้วย line.rstrip()
# lines = open('data.txt').readlines()
# for line in lines: print(line.rstrip())
print('readlines demo')

readline()

f.readline() จะอ่านทีละหนึ่งบรรทัด เหมาะเมื่อคุณต้องการควบคุมอย่างละเอียดหรือกำลังอ่านไฟล์ขนาดใหญ่มากแบบต่อเนื่อง
# f = open('data.txt')
# first = f.readline()
print('readline demo')

การวนซ้ำผ่านบรรทัดโดยตรง

for line in f: เป็นวิธีที่ใช้หน่วยความจำอย่างมีประสิทธิภาพที่สุด โดยอ่านทีละบรรทัดโดยไม่โหลดไฟล์ทั้งหมด
# for line in open('data.txt'):
#     print(line.rstrip())
print('line iterator demo')

พารามิเตอร์การเข้ารหัส

โปรดระบุการเข้ารหัสเสมอ: open('file.txt', encoding='utf-8') เพื่อหลีกเลี่ยงข้อผิดพลาดจากการเข้ารหัสเริ่มต้นที่แตกต่างกันตามแพลตฟอร์ม
# f = open('data.txt', 'r', encoding='utf-8')
print('encoding demo')

การอ่านไบต์เฉพาะส่วน

f.read(100) จะอ่านไบต์หรืออักขระไม่เกิน 100 รายการ f.seek(0) จะรีเซ็ตตัวชี้ไฟล์กลับไปยังจุดเริ่มต้น
# f = open('data.txt')
# chunk = f.read(100)
# f.seek(0)
print('seek demo')

tell()

f.tell() จะคืนค่าตำแหน่งไบต์ปัจจุบัน ใช้ร่วมกับ seek() เพื่อกระโดดไปยังตำแหน่งต่าง ๆ ในไฟล์
# f = open('data.txt')
# f.read(5)
# print(f.tell())
print('tell demo')

การอ่านไฟล์ไบนารี

open('image.png', 'rb') จะเปิดไฟล์ในโหมดอ่านไบนารี และคืนค่าอ็อบเจกต์ bytes ไม่ใช่สตริง
# with open('image.png', 'rb') as f:
#     header = f.read(4)
print('binary read demo')

ปิดไฟล์เสมอ

f.close() จะคืนทรัพยากรที่ใช้จัดการไฟล์ของ OS หากโค้ดของคุณเกิดข้อผิดพลาดก่อน close() ตัวจัดการไฟล์จะรั่วไหล ให้ใช้ with เพื่อป้องกันปัญหานี้
# f = open('data.txt')
# try:
#     content = f.read()
# finally:
#     f.close()
print('close demo')

ตรวจสอบอย่างรวดเร็ว

เมธอดใดใช้อ่านทีละหนึ่งบรรทัดจากอ็อบเจกต์ไฟล์

สรุปทบทวน

open(path, mode, encoding) ใช้เปิดไฟล์ read() ใช้อ่านเนื้อหาทั้งหมด readline() ใช้อ่านทีละหนึ่งบรรทัด และการวนซ้ำผ่านอ็อบเจกต์ไฟล์โดยตรงช่วยเพิ่มประสิทธิภาพ โปรดปิดไฟล์เสมอ

เรียนรู้ต่อไป

ทำได้ดีมากครับ โปรดไปยังบทเรียนถัดไปเพื่อพัฒนาทักษะของคุณต่อไป

คำถามที่พบบ่อย

บทเรียน “การเปิดและอ่านไฟล์” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การเปิดและอ่านไฟล์” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Python Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การเปิดและอ่านไฟล์”

เปิดไฟล์ข้อความและอ่านเนื้อหาด้วย read และ readlines คุณปฏิบัติ Python Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Python Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Python Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “การเปิดและอ่านไฟล์” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Python Academy นี้ได้ไหม

ได้ บทเรียน Python Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การเปิดและอ่านไฟล์
  2. การเขียนและเพิ่มข้อมูลในไฟล์
  3. การใช้คำสั่ง with กับไฟล์
  4. การทำงานกับเส้นทางไฟล์ด้วย pathlib
← กลับไปที่ Python Academy