Python readline() วิธีการพร้อมตัวอย่าง
ความหมายของ Python อ่านไลน์เหรอ?
Python อ่านบรรทัด () เป็นวิธีไฟล์ที่ช่วยในการอ่านหนึ่งบรรทัดจากไฟล์ที่กำหนด มีการขึ้นบรรทัดใหม่ต่อท้าย (“\n”) ที่ส่วนท้ายของสตริงที่ส่งคืน
คุณยังสามารถใช้พารามิเตอร์ขนาดเพื่อให้ได้ความยาวของเส้นที่ต้องการได้ พารามิเตอร์ขนาดเป็นทางเลือก และตามค่าเริ่มต้น ระบบจะส่งคืนทั้งบรรทัด
เข้าใจการไหลของ readline() เป็นอย่างดีในภาพหน้าจอที่แสดงด้านล่าง:
คุณมีไฟล์ demo.txt และเมื่อใช้ readline() ไฟล์นั้นจะส่งคืนบรรทัดแรกจาก demo.txt
ลักษณะของ Python อ่านบรรทัด ()
นี่คือลักษณะสำคัญของ Python อ่านบรรทัด:
- Python readline() วิธีการอ่านเพียงบรรทัดเดียวจากไฟล์ที่กำหนด
- โดยจะขึ้นบรรทัดใหม่ (“\n”) ต่อท้ายบรรทัด
- หากคุณเปิดไฟล์ในโหมดอ่านปกติ readline() จะส่งคืนสตริงให้คุณ
- หากคุณเปิดไฟล์ในโหมดไบนารี่ readline() จะส่งคืนออบเจ็กต์ไบนารีให้คุณ
- คุณสามารถกำหนดขนาดเป็นอาร์กิวเมนต์ให้กับ readline() และมันจะทำให้คุณได้บรรทัดตามขนาดที่กำหนดรวมถึงการขึ้นบรรทัดใหม่ ตามค่าเริ่มต้น ขนาดจะเป็น 0 และจะส่งกลับทั้งบรรทัด
วากยสัมพันธ์
file.readline(size)
พารามิเตอร์
ขนาด: (เป็นทางเลือก) ที่นี่ คุณสามารถระบุตัวเลข ซึ่งเป็นค่าจำนวนเต็มเป็น readline() จะได้สตริงขนาดนั้น ตามค่าเริ่มต้น ค่าของขนาดคือ -1 และด้วยเหตุนี้จึงส่งคืนสตริงทั้งหมด
ค่าส่งคืน
readline() วิธีการส่งกลับบรรทัดจากไฟล์ที่กำหนด
ตัวอย่าง: หากต้องการอ่านบรรทัดแรกโดยใช้ readline()
ต่อไปนี้จะเข้าใจวิธีการอ่านบรรทัดจากไฟล์ที่กำหนดโดยใช้เมธอด readline() เราจะใช้ไฟล์ demo.txt ที่นี่เพื่ออ่านเนื้อหา
เนื้อหาไฟล์ของ demo.txt มีดังนี้:
สาธิต.txt
Testing - FirstLine Testing - SecondLine Testing - Third Line Testing - Fourth Line Testing - Fifth Line
ต่อไปนี้เป็นขั้นตอนในการอ่านบรรทัดจากไฟล์ demo.txt
ขั้นตอน 1) ขั้นแรก ให้เปิดไฟล์โดยใช้เมธอด file open() ดังที่แสดงด้านล่าง:
myfile = open("demo.txt", "r")
open() วิธีการใช้พารามิเตอร์ตัวแรกเป็นชื่อไฟล์ และพารามิเตอร์ตัวที่สองคือโหมดในขณะที่คุณต้องการเปิด ตอนนี้เราได้ใช้ "r" ซึ่งหมายความว่าไฟล์จะเปิดในโหมดอ่าน
ขั้นตอน 2) ใช้เมธอด readline() เพื่ออ่านบรรทัดจากไฟล์ demo.txt ดังที่แสดงด้านล่าง:
myline = myfile.readline()
ขั้นตอน 3) บรรทัดที่อ่านจะถูกเก็บไว้ใน myline ให้เราพิมพ์บรรทัดนั้นเพื่อดูรายละเอียด:
print(myline)
ขั้นตอน 4) เมื่ออ่านค่าเสร็จแล้ว ให้ปิดไฟล์โดยใช้วิธี close() ดังภาพด้านล่าง
myfile.close()
รหัสทั้งหมดมีดังนี้:
myfile = open("demo.txt", "r") myline = myfile.readline() print(myline) myfile.close()
Output:
Testing - FirstLine
ตัวอย่าง: การใช้อาร์กิวเมนต์ขนาดใน readline()
เราได้เห็นวิธีการอ่านทั้งบรรทัดจากไฟล์ที่กำหนดแล้ว คุณยังสามารถใช้พารามิเตอร์ขนาดเพื่อให้ได้ความยาวเส้นที่ต้องการเท่านั้น
ตัวอย่างที่ให้มามีพารามิเตอร์ขนาดที่กำหนดเป็น 10 บรรทัดแรกจะถูกดึงออกมา และจะส่งคืนบรรทัดที่มีอักขระตั้งแต่ 0 ถึง 10
เราจะใช้ไฟล์ demo.txt ที่ใช้ก่อนหน้านี้ บันทึกไฟล์ demo.txt และใช้ตำแหน่งของ demo.txt ภายในฟังก์ชัน open()
myfile = open("demo.txt", "r") myline = myfile.readline(10) print(myline) myfile.close()
Output:
Testing -
ไฟล์พื้นฐาน IO ในรูปแบบ Python
ไฟล์พื้นฐาน IO ค่ะ Python การเปิดไฟล์เพื่ออ่านหรือเขียนเป็นฟังก์ชัน open() ในตัว อาร์กิวเมนต์ที่สำคัญสองข้อที่อยู่ในฟังก์ชัน open() คือพาธของไฟล์ ซึ่งเป็นสตริง และโหมดที่ระบุว่าไฟล์นั้นมีไว้เพื่อการอ่านหรือการเขียน อาร์กิวเมนต์โหมดเป็นสตริง
ไวยากรณ์:
open("file path", "mode")
ต่อไปนี้เป็นโหมดต่างๆ ที่สามารถใช้ร่วมกับเมธอด open():
โหมด | Descriptไอออน |
---|---|
R | นี่จะเป็นการเปิด () ไฟล์ในโหมดอ่าน |
W | การใช้ w คุณสามารถเขียนลงไฟล์ได้ |
a | การใช้ with open() จะเปิดไฟล์ในโหมดเขียน และเนื้อหาจะถูกต่อท้ายที่ส่วนท้าย |
rb | โหมด rb จะเปิดไฟล์เพื่ออ่านข้อมูลไบนารี |
wb | โหมด wb จะเปิดไฟล์สำหรับเขียนข้อมูลไบนารี |
เนื่องจากเราต้องการไฟล์สำหรับการอ่าน เราจึงจะใช้โหมดการอ่าน เช่น (r)
อ่านไฟล์ทีละบรรทัดใน Python
เมธอด readline() ช่วยในการอ่านทีละบรรทัด และส่งคืนบรรทัดแรกจากไฟล์ที่กำหนด
ที่นี่เราจะใช้ readline() เพื่ออ่านบรรทัดทั้งหมดจากไฟล์ที่กำหนด ไฟล์ที่จะอ่านคือ demo.txt เนื้อหาของไฟล์คือ:
บันทึกไฟล์ demo.txt และใช้ตำแหน่งของ demo.txt ภายในฟังก์ชัน open()
Testing - FirstLine Testing - SecondLine Testing - Third Line Testing - Fourth Line Testing - Fifth Line
การใช้ readline() ภายใน while-loop จะดูแลการอ่านบรรทัดทั้งหมดที่มีอยู่ในไฟล์ demo.txt
myfile = open("demo.txt", "r") myline = myfile.readline() while myline: print(myline) myline = myfile.readline() myfile.close()
Output:
Testing - FirstLine Testing - SecondLine Testing - Third Line Testing - Fourth Line Testing - Fifth Line
จะอ่านทุกบรรทัดในไฟล์พร้อมกันได้อย่างไร?
หากต้องการอ่านบรรทัดทั้งหมดจากไฟล์ที่กำหนด คุณสามารถใช้ได้ Python ฟังก์ชัน readline() ความพิเศษของ Python ฟังก์ชัน readlines() คือการอ่านเนื้อหาทั้งหมดจากไฟล์ที่กำหนดและบันทึกเอาต์พุตในรายการ
ฟังก์ชัน readlines() จะอ่านจนถึงจุดสิ้นสุดของไฟล์ โดยใช้ฟังก์ชัน readline() ภายในและส่งคืนรายการที่มีบรรทัดทั้งหมดที่อ่านจากไฟล์
นี่คือตัวอย่างการทำงานในการอ่านบรรทัดทั้งหมดจากไฟล์โดยใช้ readlines()
ไฟล์ที่เราจะใช้อ่านคือ test.txt เนื้อหาของไฟล์ test.txt มีดังนี้:
test.txt: บันทึกไฟล์ test.txt และใช้ตำแหน่งของ test.txt ภายในฟังก์ชัน open()
Line No 1 Line No 2 Line No 3 Line No 4 Line No 5
myfile = open("test.txt", "r") mylist = myfile.readlines() print(mylist) myfile.close()
Output:
['Line No 1\n', 'Line No 2\n', 'Line No 3\n', 'Line No 4\n', 'Line No 5']
จะอ่านไฟล์ทีละบรรทัดโดยใช้ for loop ได้อย่างไร
ต่อไปนี้เป็นขั้นตอนในการอ่านบรรทัดต่อบรรทัดจากไฟล์ที่กำหนดโดยใช้ for-loop:
ขั้นตอน 1) ขั้นแรกให้เปิดไฟล์โดยใช้ Python ฟังก์ชั่น open() ในโหมดอ่าน
ขั้นตอน 2) ฟังก์ชัน open() จะส่งคืนตัวจัดการไฟล์ ใช้ตัวจัดการไฟล์ภายใน for-loop ของคุณและอ่านบรรทัดทั้งหมดจากไฟล์ที่กำหนดทีละบรรทัด
ขั้นตอน 3) เมื่อเสร็จแล้ว ให้ปิดตัวจัดการไฟล์โดยใช้ฟังก์ชัน close()
นี่คือตัวอย่างการทำงานของการใช้ for-loop เพื่ออ่านทีละบรรทัดจากไฟล์ที่กำหนด ไฟล์ที่เราจะใช้ที่นี่คือ test.txt
เนื้อหาของ test.txt มีดังต่อไปนี้ บันทึกไฟล์ test.txt และใช้ตำแหน่งของ test.txt ภายในฟังก์ชัน open()
Line No 1 Line No 2 Line No 3 Line No 4 Line No 5
myfile = open("test.txt", "r") for line in myfile: print(line) myfile.close()
Output:
Line No 1 Line No 2 Line No 3 Line No 4 Line No 5
จะอ่านไฟล์ทีละบรรทัดโดยใช้ while loop ได้อย่างไร
คุณสามารถใช้การวนซ้ำ while และอ่านเนื้อหาจากไฟล์ที่กำหนดทีละบรรทัด ในการทำเช่นนั้น ขั้นแรก ให้เปิดไฟล์ในโหมดอ่านโดยใช้ฟังก์ชัน open() ตัวจัดการไฟล์ที่ส่งคืนจาก open() ใช้ภายใน ในขณะที่ –วนซ้ำ เพื่ออ่านบรรทัด
Python ฟังก์ชัน readline() ถูกใช้ภายใน while-loop เพื่ออ่านบรรทัด ในกรณีของ for-loop การวนซ้ำจะสิ้นสุดลงเมื่อพบจุดสิ้นสุดของไฟล์ แต่กรณีของ while-loop นั้นไม่เหมือนกัน และคุณต้องตรวจสอบต่อไปเพื่อดูว่าไฟล์อ่านเสร็จแล้วหรือไม่ ดังนั้นเมื่อฟังก์ชัน readline() ส่งกลับสตริงว่าง คุณสามารถใช้คำสั่งแบ่งเพื่อยุติคำสั่ง while –loop ได้
นี่คือตัวอย่างการทำงานในการอ่านไฟล์ทีละบรรทัดโดยใช้ while-loop
ไฟล์ที่เราจะใช้คือ test.txt บันทึกไฟล์ test.txt และใช้ตำแหน่งของ test.txt ภายในฟังก์ชัน open()
Line No 1 Line No 2 Line No 3 Line No 4 Line No 5
myfile = open("test.txt", "r") while myfile: line = myfile.readline() print(line) if line == "": break myfile.close()
Output:
Line No 1 Line No 2 Line No 3 Line No 4 Line No 5
สรุป
- Python readline() เป็นวิธีไฟล์ที่ช่วยในการอ่านหนึ่งบรรทัดจากไฟล์ที่กำหนด มีการขึ้นบรรทัดใหม่ต่อท้าย (“\n”) ที่ส่วนท้ายของสตริงที่ส่งคืน
- คุณยังสามารถใช้พารามิเตอร์ขนาดเพื่อให้ได้ความยาวของเส้นที่ต้องการได้ พารามิเตอร์ขนาดเป็นทางเลือก และตามค่าเริ่มต้น ระบบจะส่งคืนทั้งบรรทัด
- เมธอด readline() ช่วยในการอ่านทีละบรรทัด และส่งคืนบรรทัดแรกจากไฟล์ที่กำหนด เราจะใช้ readline() เพื่ออ่านบรรทัดทั้งหมดจากไฟล์ที่กำหนด
- หากต้องการอ่านบรรทัดทั้งหมดจากไฟล์ที่กำหนด คุณสามารถใช้ได้ Python ฟังก์ชัน readline() ความพิเศษของ Python ฟังก์ชัน readlines() คืออ่านเนื้อหาทั้งหมดจากไฟล์ที่กำหนดและบันทึกเอาต์พุตไว้ในรายการ
- ฟังก์ชัน readlines() อ่านจนถึงจุดสิ้นสุดของไฟล์โดยใช้ฟังก์ชัน readline() ภายในและส่งคืนรายการที่มีบรรทัดทั้งหมดอ่านจากไฟล์
- เป็นไปได้ที่จะอ่านไฟล์ทีละบรรทัดโดยใช้ for loop โดยขั้นแรกให้เปิดไฟล์โดยใช้ Python ฟังก์ชั่น open() ในโหมดอ่าน ฟังก์ชัน open() จะส่งคืนตัวจัดการไฟล์ ใช้ตัวจัดการไฟล์ภายใน for-loop ของคุณและอ่านบรรทัดทั้งหมดจากไฟล์ที่กำหนดทีละบรรทัด เมื่อเสร็จแล้วให้ปิดตัวจัดการไฟล์โดยใช้ฟังก์ชัน close()
- คุณสามารถใช้การวนซ้ำ while และอ่านเนื้อหาจากไฟล์ที่กำหนดทีละบรรทัด ในการทำเช่นนั้น ขั้นแรก ให้เปิดไฟล์ในโหมดอ่านโดยใช้ฟังก์ชัน open() ตัวจัดการไฟล์ที่ส่งคืนจาก open() ใช้ภายในในขณะที่ –loop เพื่ออ่านบรรทัด Python ฟังก์ชัน readline() ถูกใช้ภายใน while-loop เพื่ออ่านบรรทัด