Có nhiều cách khác nhau để đọc tệp trong Python. Các phương pháp phổ biến nhất để đọc tệp theo từng dòng trong Python sẽ được đề cập Show Sử dụng phương thức readlines()Sử dụng phương pháp này, một tệp sẽ được mở và nội dung của nó sẽ được chia thành các dòng riêng biệt. Phương thức này cũng trả về danh sách mọi dòng trong tệp. Để đọc toàn bộ tệp một cách hiệu quả, chúng ta có thể sử dụng hàm readlines() Sau đây là một ví dụ để loại bỏ các tệp hoán đổi bằng cách sử dụng tệp. phương thức kết thúc() - Thí dụSau đây là một ví dụ để đọc từng dòng tệp văn bản bằng phương thức readlines() - đầu raSau đây là một đầu ra của đoạn mã trên ['Welcome to Tutorials Point\n', 'This is a new file.\n', 'Reading a file line by line using Python\n', 'Thank You!'] Sử dụng phương thức readline()Dòng đầu tiên của tệp văn bản có thể được lấy bằng phương thức readline(). Khi chúng ta sử dụng phương thức readline() để đọc file, so với readlines() thì chỉ có một dòng được in ra Thí dụSau đây là một ví dụ để đọc một dòng của tệp văn bản bằng phương thức readline() - đầu raHàm readline() chỉ trả về một dòng văn bản. Nếu bạn muốn đọc tất cả các dòng cùng một lúc, hãy sử dụng readline() Sau đây là đầu ra của đoạn mã trên - Welcome to Tutorials Point Lưu ý − Phương thức readline(), trái ngược với phương thức tương đương, chỉ trích xuất một dòng từ một tệp. Một ký tự dòng mới ở cuối cũng sẽ được thêm vào cuối chuỗi bằng phương thức realine() Chúng tôi cũng có thể xác định độ dài cho dòng được trả về bằng phương thức readline(). Không có kích thước, toàn bộ dòng sẽ được đọc Sử dụng vòng lặp WhileBạn có thể sử dụng vòng lặp while để đọc từng dòng nội dung của tệp được chỉ định. Trước tiên hãy mở tệp ở chế độ đọc bằng hàm open() để thực hiện điều đó. Sử dụng trình xử lý tệp open() được trả về bên trong vòng lặp while để đọc các dòng Vòng lặp while sử dụng phương thức readline() của Python để đọc các dòng. Khi vòng lặp for được sử dụng, vòng lặp sẽ kết thúc khi đến cuối tệp. Tuy nhiên, với vòng lặp while, đây không phải là trường hợp và bạn phải liên tục kiểm tra xem tệp đã đọc xong chưa. Do đó, bạn có thể sử dụng câu lệnh break để kết thúc vòng lặp while - bất cứ khi nào phương thức readline() trả về một chuỗi rỗng Thí dụSau đây là một ví dụ để đọc từng dòng một tệp văn bản bằng cách sử dụng vòng lặp while -
đầu raSau đây là đầu ra của đoạn mã trên - Welcome to Tutorials Point This is a new file. Reading a file line by line using Python Thank You! Sử dụng vòng lặpBắt đầu bằng cách mở tệp ở chế độ chỉ đọc bằng hàm Python open(). Một trình xử lý tệp sẽ được trả về bởi hàm open(). Trong vòng lặp for của bạn, hãy sử dụng trình xử lý tệp để đọc từng dòng từ tệp được cung cấp cùng một lúc. Khi hoàn tất, sử dụng hàm close() để đóng trình xử lý tệp Thí dụSau đây là một ví dụ để đọc từng dòng một tệp văn bản bằng cách sử dụng vòng lặp for -
đầu raSau đây là đầu ra của đoạn mã trên - Welcome to Tutorials Point This is a new file. Reading a file line by line using Python Thank You! Sử dụng Trình quản lý ngữ cảnhBất kỳ ngôn ngữ lập trình nào cũng yêu cầu một cách tiếp cận tinh tế để quản lý tệp. Phải cẩn thận khi xử lý tệp để tránh tham nhũng. Điều quan trọng cần nhớ là đóng tài nguyên sau khi mở tệp. Ngoài ra, Python có giới hạn về số lượng tệp có thể được mở cùng một lúc. Python cung cấp cho chúng tôi Trình quản lý ngữ cảnh để giúp chúng tôi tránh những sự cố này Việc xử lý tệp sẽ an toàn nếu Python sử dụng câu lệnh with
Thí dụSau đây là một ví dụ để đọc từng dòng một tệp văn bản bằng cách sử dụng với câu lệnh - đầu raLần này, các dòng của tệp được đọc bằng vòng lặp for. Khi chúng tôi sử dụng Trình quản lý ngữ cảnh, tệp sẽ tự đóng bất cứ khi nào trình xử lý của nó thoát khỏi phạm vi. Câu lệnh with đảm bảo rằng tài nguyên được xử lý đúng cách khi hàm đã hoàn thành công việc với tệp Rất nhiều câu trả lời khác ở đây, nhưng để trả lời chính xác câu hỏi bạn đã hỏi (trước khi @MarkAmery chỉnh sửa câu hỏi ban đầu và thay đổi ý nghĩa)
Nói cách khác, nếu bạn đã đọc trong tệp (như bạn đã nói) và có một khối dữ liệu lớn trong bộ nhớ, thì để lấy dòng đầu tiên từ tệp đó một cách hiệu quả, hãy thực hiện tách() trên ký tự xuống dòng, một lần Lưu ý rằng điều này không bao gồm ký tự Phương pháp nào đọc một dòng từ một tệp?Phương thức readline đọc một dòng từ tệp và trả về dưới dạng chuỗi.
Hàm nào được sử dụng để đọc một dòng từ tệp trong Python?Phương pháp 1. Đọc từng dòng tệp bằng cách sử dụng readlines()
. Chúng ta có thể lặp qua danh sách và loại bỏ ký tự '\n' dòng mới bằng cách sử dụng hàm strip(). Thí dụ. Python3. |