HomeLập trìnhPythonPython Open File...

Python Open File – Cách đọc từng dòng một tệp văn bản


Trong Python, có một số cách bạn có thể đọc tệp văn bản.

Trong bài viết này, tôi sẽ đi qua open() chức năng, các read(), readline(), readlines(), close() các phương pháp và with từ khóa.

Hàm open() trong Python là gì?

Nếu bạn muốn đọc một tệp văn bản bằng Python, trước tiên bạn phải mở nó.

Đây là cú pháp cơ bản cho Python open() chức năng:

open("name of file you want opened", "optional mode")

Tên tệp và đường dẫn chính xác

Nếu tệp văn bản và tệp hiện tại của bạn nằm trong cùng một thư mục (“thư mục”), thì bạn chỉ cần tham chiếu tên tệp trong open() chức năng.

open("demo.txt")

Đây là một ví dụ về cả hai tệp nằm trong cùng một thư mục:

Screen-Shot-2021-09-13-at-1.49.16-AM

Nếu tệp văn bản của bạn nằm trong một thư mục khác, thì bạn sẽ cần tham chiếu tên đường dẫn chính xác cho tệp văn bản.

Trong ví dụ này, các random-text tập tin nằm trong một thư mục khác sau đó main.py:

Screen-Shot-2021-09-13-at-2.00.27-AM

Để truy cập tệp đó trong main.pybạn phải bao gồm tên thư mục với tên của tệp.

open("text-files/random-text.txt")

Nếu bạn không có đường dẫn chính xác cho tệp, thì bạn sẽ nhận được thông báo lỗi như sau:

open("random-text.txt")
Screen-Shot-2021-09-13-at-2.03.33-AM

Điều thực sự quan trọng là phải theo dõi thư mục bạn đang ở để bạn có thể tham khảo tên đường dẫn chính xác.

Tham số Chế độ tùy chọn trong open()

Có nhiều chế độ khác nhau khi bạn đang làm việc với các tệp. Chế độ mặc định là chế độ đọc.

Đọc thêm  Hàm zip() trong Python – Được giải thích bằng các ví dụ về mã

Lá thư r là viết tắt của chế độ đọc.

open("demo.txt", mode="r")

Bạn cũng có thể bỏ qua mode= và chỉ cần viết "r".

open("demo.txt", "r")

Ngoài ra còn có các loại chế độ khác như "w" để viết hoặc "a" để nối thêm. Tôi sẽ không đi vào chi tiết các chế độ khác vì chúng ta sẽ chỉ tập trung vào việc đọc tệp.

Để biết danh sách đầy đủ các chế độ khác, vui lòng đọc qua tài liệu.

Các thông số bổ sung cho open() chức năng trong Python

Các open() chức năng có thể nhận các tham số tùy chọn này.

  • đệm
  • mã hóa
  • lỗi
  • dòng mới
  • đóng cửa
  • cái mở

Để tìm hiểu thêm về các tham số tùy chọn này, vui lòng đọc qua tài liệu.

Phương thức readable() trong Python là gì?

Nếu bạn muốn kiểm tra xem một tệp có thể được đọc hay không, thì bạn có thể sử dụng readable() phương pháp. Điều này sẽ trả lại một True hoặc False.

Ví dụ này sẽ trở lại True bởi vì chúng tôi đang ở chế độ đọc:

file = open("demo.txt")
print(file.readable())
Screen-Shot-2021-09-13-at-3.36.37-AM

Nếu tôi thay đổi ví dụ này, để "w" (viết), sau đó là chế độ readable() phương pháp sẽ trở lại False:

file = open("demo.txt", "w")
print(file.readable())
Screen-Shot-2021-09-13-at-3.36.18-AM

Phương thức read() trong Python là gì?

Các read() sẽ đọc tất cả nội dung của tệp dưới dạng một chuỗi. Đây là một phương pháp tốt để sử dụng nếu bạn không có nhiều nội dung trong tệp văn bản.

Trong ví dụ này, tôi đang sử dụng read() phương pháp để in ra một danh sách các tên từ demo.txt tập tin:

file = open("demo.txt")
print(file.read())
Screen-Shot-2021-09-13-at-2.43.59-AM

Phương thức này có thể nhận một tham số tùy chọn được gọi là kích thước. Thay vì đọc toàn bộ tệp, chỉ một phần của tệp sẽ được đọc.

Nếu chúng tôi sửa đổi ví dụ trước đó, chúng tôi chỉ có thể in ra từ đầu tiên bằng cách thêm số 4 làm đối số cho read().

file = open("demo.txt")
print(file.read(4))
Screen-Shot-2021-09-13-at-3.01.30-AM

Nếu đối số kích thước bị bỏ qua hoặc nếu số này là số âm thì toàn bộ tệp sẽ được đọc.

Đọc thêm  Giải thích cấu trúc dữ liệu từ điển Python

Phương thức close() trong Python là gì?

Khi bạn đã đọc xong một tệp, điều quan trọng là bạn phải đóng tệp đó. Nếu bạn quên đóng tệp của mình, điều đó có thể gây ra sự cố.

Đây là một ví dụ về cách đóng demo.txt tập tin:

file = open("demo.txt")
print(file.read())
file.close()

Làm thế nào để sử dụng with từ khóa để đóng tệp trong Python

Một cách để đảm bảo rằng tệp của bạn đã được đóng là sử dụng with từ khóa. Đây được coi là phương pháp hay vì tệp sẽ tự động đóng thay vì bạn phải đóng tệp theo cách thủ công.

Đây là cách viết lại ví dụ của chúng ta bằng cách sử dụng with từ khóa:

with open("demo.txt") as file:
    print(file.read())

Phương thức readline() trong Python là gì?

Phương thức này sẽ đọc một dòng từ tệp và trả về dòng đó.

Trong ví dụ này, chúng tôi có một tệp văn bản với hai câu sau:

This is the first line
This is the second line

Nếu chúng ta sử dụng readline() phương thức, nó sẽ chỉ in câu đầu tiên của tệp.

with open("demo.txt") as file:
    print(file.readline())
Screen-Shot-2021-09-13-at-3.57.14-AM

Phương thức này cũng nhận tham số kích thước tùy chọn. Ta có thể sửa ví dụ thêm số 7 để chỉ đọc và in ra This is:

with open("demo.txt") as file:
    print(file.readline(7))
Screen-Shot-2021-09-13-at-4.08.03-AM

Phương thức readlines() trong Python là gì?

Phương thức này sẽ đọc và trả về danh sách tất cả các dòng trong tệp.

Trong ví dụ này, chúng tôi sẽ in ra các mặt hàng tạp hóa dưới dạng danh sách bằng cách sử dụng readlines() phương pháp.

with open("demo.txt") as file:
    print(file.readlines())
Screen-Shot-2021-09-13-at-4.19.23-AM

Cách sử dụng vòng lặp for để đọc các dòng từ tệp trong Python

Một giải pháp thay thế cho các phương pháp đọc khác nhau này là sử dụng một for loop.

Trong ví dụ này, chúng ta có thể in ra tất cả các mục trong demo.txt tệp bằng cách lặp qua đối tượng.

with open("demo.txt") as file:
    for item in file:
        print(item)
Screen-Shot-2021-09-13-at-4.27.49-AM

Phần kết luận

Nếu bạn muốn đọc một tệp văn bản bằng Python, trước tiên bạn phải mở nó.

open("name of file you want opened", "optional mode")

Nếu tệp văn bản và tệp hiện tại của bạn nằm trong cùng một thư mục (“thư mục”), thì bạn chỉ cần tham chiếu tên tệp trong open() chức năng.

Đọc thêm  Chạy Python Script – Cách thực thi các lệnh Python Shell trong Terminal

Nếu tệp văn bản của bạn nằm trong một thư mục khác, thì bạn sẽ cần tham chiếu tên đường dẫn chính xác cho tệp văn bản.

Các open() chức năng nhận tham số chế độ tùy chọn. Chế độ mặc định là chế độ đọc.

open("demo.txt", "r")

Nếu bạn muốn kiểm tra xem một tệp có thể được đọc hay không, thì bạn có thể sử dụng readable() phương pháp. Điều này sẽ trả lại một True hoặc False.

file.readable()

Các read() sẽ đọc tất cả nội dung của tệp dưới dạng một chuỗi.

file.read()

Khi bạn đã đọc xong một tệp, điều quan trọng là bạn phải đóng tệp đó. Nếu bạn quên đóng tệp của mình, điều đó có thể gây ra sự cố.

file.close()

Một cách để đảm bảo rằng tệp của bạn đã được đóng là sử dụng with từ khóa.

with open("demo.txt") as file:
    print(file.read())

Các readline() phương thức sẽ đọc một dòng từ tệp và trả về dòng đó.

file.readline()

Các readlines() phương thức sẽ đọc và trả về danh sách tất cả các dòng trong tệp.

file.readlines()

Một giải pháp thay thế cho các phương pháp đọc khác nhau này là sử dụng một for loop.

with open("demo.txt") as file:
    for item in file:
        print(item)

Tôi hy vọng bạn thích bài viết này và chúc may mắn trên hành trình Python của bạn.



Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status