Hướng dẫn get file content in python - lấy nội dung tệp trong python

Tóm tắt: Trong hướng dẫn này, bạn tìm hiểu nhiều cách khác nhau để đọc các tệp văn bản bằng Python.: in this tutorial, you learn various ways to read text files in Python.

TL;DR

Những điều sau đây cho thấy cách đọc tất cả các văn bản từ tệp

open(path_to_file, mode)

Code language: Python (python)
4 thành một chuỗi:

with open('readme.txt') as f: lines = f.readlines()

Code language: Python (python)

Các bước để đọc tệp văn bản trong Python

Để đọc một tệp văn bản trong Python, bạn làm theo các bước sau:

  • Đầu tiên, hãy mở một tệp văn bản để đọc bằng cách sử dụng hàm

    open(path_to_file, mode)

    Code language: Python (python)
    5.
  • Thứ hai, đọc văn bản từ tệp văn bản bằng phương thức tệp

    open(path_to_file, mode)

    Code language: Python (python)
    6,

    open(path_to_file, mode)

    Code language: Python (python)
    7 hoặc

    open(path_to_file, mode)

    Code language: Python (python)
    8 của đối tượng tệp.
  • Thứ ba, đóng tệp bằng phương thức tệp

    open(path_to_file, mode)

    Code language: Python (python)
    9.

1) hàm

Hàm

open(path_to_file, mode)

Code language: Python (python)
5 có nhiều tham số nhưng bạn sẽ tập trung vào hai tham số đầu tiên:

open(path_to_file, mode)

Code language: Python (python)

Tham số

f = open('the-zen-of-python.txt','r')

Code language: Python (python)
1 chỉ định đường dẫn đến tệp văn bản.

Nếu chương trình và tệp nằm trong cùng một thư mục, bạn chỉ cần chỉ định tên tệp của tệp. Nếu không, bạn cần bao gồm đường dẫn đến tệp cũng như tên tệp.

Để chỉ định đường dẫn đến tệp, bạn sử dụng slash phía trước (

f = open('the-zen-of-python.txt','r')

Code language: Python (python)
2) ngay cả khi bạn làm việc trên Windows.

Ví dụ: nếu tệp

open(path_to_file, mode)

Code language: Python (python)
4 được lưu trữ trong thư mục

f = open('the-zen-of-python.txt','r')

Code language: Python (python)
4 làm chương trình, bạn cần chỉ định đường dẫn đến tệp là

f = open('the-zen-of-python.txt','r')

Code language: Python (python)
5

f = open('the-zen-of-python.txt','r')

Code language: Python (python)
6 là một tham số tùy chọn. Nó có một chuỗi chỉ định chế độ mà bạn muốn mở tệp. Bảng sau đây hiển thị các chế độ có sẵn để mở tệp văn bản:

Cách thứcSự mô tả

f = open('the-zen-of-python.txt','r')

Code language: Python (python)
7
Mở cho tệp văn bản để đọc văn bản

f = open('the-zen-of-python.txt','r')

Code language: Python (python)
8
Mở tệp văn bản để viết văn bản

f = open('the-zen-of-python.txt','r')

Code language: Python (python)
9
Mở tệp văn bản để nối thêm văn bản

Ví dụ: để mở một tệp có tên là

f.close()

Code language: Python (python)
0 được lưu trữ trong cùng thư mục với chương trình, bạn sử dụng mã sau:

f = open('the-zen-of-python.txt','r')

Code language: Python (python)

Hàm

open(path_to_file, mode)

Code language: Python (python)
5 trả về một đối tượng tệp mà bạn sẽ sử dụng để đọc văn bản từ tệp văn bản.

2) Đọc phương thức văn bản

Đối tượng tệp cung cấp cho bạn ba phương thức để đọc văn bản từ tệp văn bản:

  • f.close()

    Code language: Python (python)
    2 - Đọc một số nội dung của một tệp dựa trên kích thước tùy chọn và trả về nội dung dưới dạng chuỗi. Nếu bạn bỏ qua kích thước, phương thức

    open(path_to_file, mode)

    Code language: Python (python)
    6 sẽ đọc từ nơi nó rời đi cho đến khi kết thúc tệp. Nếu kết thúc của một tệp đã đạt được, phương thức

    open(path_to_file, mode)

    Code language: Python (python)
    6 & nbsp; trả về một chuỗi trống.
  • open(path_to_file, mode)

    Code language: Python (python)
    7 - Đọc một dòng từ một tệp văn bản và trả về dòng dưới dạng chuỗi. Nếu kết thúc của một tệp đã đạt được, ____ 17 & nbsp; trả về một chuỗi trống.
  • open(path_to_file, mode)

    Code language: Python (python)
    8 - Đọc tất cả các dòng của tệp văn bản vào một danh sách các chuỗi. Phương pháp này rất hữu ích nếu bạn có một tệp nhỏ và bạn muốn thao tác toàn bộ văn bản của tệp đó.

3) Phương thức đóng ()

Tệp mà bạn mở sẽ vẫn mở cho đến khi bạn đóng nó bằng phương thức

open(path_to_file, mode)

Code language: Python (python)
9.

Điều quan trọng là phải đóng tệp không còn được sử dụng vì những lý do sau:

  • Đầu tiên, khi bạn mở một tệp trong tập lệnh của mình, hệ thống tệp thường khóa nó xuống để không có chương trình hoặc tập lệnh nào khác có thể sử dụng nó cho đến khi bạn đóng nó.
  • Thứ hai, hệ thống tệp của bạn có số lượng mô tả tệp hạn chế mà bạn có thể tạo trước khi hết chúng. Mặc dù số này có thể cao, nhưng nó có thể mở rất nhiều tệp và làm cạn kiệt tài nguyên hệ thống tệp của bạn.
  • Thứ ba, việc để nhiều tệp mở có thể dẫn đến các điều kiện chủng tộc xảy ra khi nhiều quy trình cố gắng sửa đổi một tệp cùng một lúc và có thể gây ra tất cả các loại hành vi bất ngờ.

Sau đây cho thấy cách gọi phương thức

open(path_to_file, mode)

Code language: Python (python)
9 để đóng tệp:

f.close()

Code language: Python (python)

Để tự động đóng tệp mà không cần gọi phương thức

open(path_to_file, mode)

Code language: Python (python)
9, bạn sử dụng câu lệnh

with open(path_to_file) as f: contents = f.readlines()

Code language: Python (python)
1 như thế này:

with open(path_to_file) as f: contents = f.readlines()

Code language: Python (python)

Trong thực tế, bạn sẽ sử dụng câu lệnh

with open(path_to_file) as f: contents = f.readlines()

Code language: Python (python)
1 để tự động đóng tệp.

Đọc một ví dụ về tệp văn bản

Chúng tôi sẽ sử dụng tệp-zen-of-python.txt để trình diễn.

Ví dụ sau đây minh họa cách sử dụng phương thức

open(path_to_file, mode)

Code language: Python (python)
6 để đọc tất cả các nội dung của tệp

f.close()

Code language: Python (python)
0 thành một chuỗi:

with open('the-zen-of-python.txt') as f: contents = f.read() print(contents)

Code language: Python (python)

Output:

Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. ...

Code language: Python (python)

Ví dụ sau sử dụng phương thức

open(path_to_file, mode)

Code language: Python (python)
8 để đọc tệp văn bản và trả về nội dung tệp làm danh sách các chuỗi:

with open('the-zen-of-python.txt') as f: [print(line) for line in f.readlines()]

Code language: Python (python)

Output:

Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. ...

Code language: Python (python)

Lý do bạn thấy một dòng trống sau mỗi dòng từ một tệp là mỗi dòng trong tệp văn bản có ký tự dòng mới (\ n). Để loại bỏ dòng trống, bạn có thể sử dụng phương thức

with open(path_to_file) as f: contents = f.readlines()

Code language: Python (python)
6. Ví dụ:

with open('the-zen-of-python.txt') as f: [print(line.strip()) for line in f.readlines()]

Code language: Python (python)

Ví dụ sau đây cho thấy cách sử dụng

open(path_to_file, mode)

Code language: Python (python)
7 để đọc từng dòng tệp văn bản:

open(path_to_file, mode)

Code language: Python (python)
0

Output:

open(path_to_file, mode)

Code language: Python (python)
1

Một cách ngắn gọn hơn để đọc một dòng tệp văn bản từng dòng

Hàm

open(path_to_file, mode)

Code language: Python (python)
5 trả về một đối tượng tệp là một đối tượng có thể lặp lại. Do đó, bạn có thể sử dụng vòng lặp

with open(path_to_file) as f: contents = f.readlines()

Code language: Python (python)
9 để lặp lại các dòng của tệp văn bản như sau:

open(path_to_file, mode)

Code language: Python (python)
2

Đây là một cách ngắn gọn hơn để đọc một dòng tệp văn bản từng dòng.

Đọc các tệp văn bản UTF-8

Mã trong các ví dụ trước hoạt động tốt với các tệp văn bản ASCII. Tuy nhiên, nếu bạn xử lý các ngôn ngữ khác như tiếng Nhật, tiếng Trung và tiếng Hàn, tệp văn bản không phải là tệp văn bản ASCII đơn giản. Và nó có thể là một tệp UTF-8 sử dụng nhiều hơn chỉ là các ký tự văn bản ASCII tiêu chuẩn.

Để mở tệp văn bản UTF-8, bạn cần chuyển

with open('the-zen-of-python.txt') as f: contents = f.read() print(contents)

Code language: Python (python)
0 cho chức năng

open(path_to_file, mode)

Code language: Python (python)
5 để hướng dẫn nó mong đợi các ký tự UTF-8 từ tệp.

Để trình diễn, bạn sẽ sử dụng tệp

with open('the-zen-of-python.txt') as f: contents = f.read() print(contents)

Code language: Python (python)
2 sau đây chứa một số trích dẫn bằng tiếng Nhật.

Những điều sau đây cho thấy cách lặp qua tệp

with open('the-zen-of-python.txt') as f: contents = f.read() print(contents)

Code language: Python (python)
2:

open(path_to_file, mode)

Code language: Python (python)
3

Output:

Hướng dẫn get file content in python - lấy nội dung tệp trong python

Bản tóm tắt

  • Sử dụng chức năng

    open(path_to_file, mode)

    Code language: Python (python)
    5 với chế độ

    f = open('the-zen-of-python.txt','r')

    Code language: Python (python)
    7 để mở tệp văn bản để đọc.
  • Sử dụng phương thức

    open(path_to_file, mode)

    Code language: Python (python)
    6,

    open(path_to_file, mode)

    Code language: Python (python)
    7 hoặc

    open(path_to_file, mode)

    Code language: Python (python)
    8 để đọc tệp văn bản.
  • Luôn đóng một tệp sau khi hoàn thành đọc nó bằng phương thức

    open(path_to_file, mode)

    Code language: Python (python)
    9 hoặc câu lệnh

    with open(path_to_file) as f: contents = f.readlines()

    Code language: Python (python)
    1.
  • Sử dụng

    with open('the-zen-of-python.txt') as f: contents = f.read() print(contents)

    Code language: Python (python)
    0 để đọc tệp văn bản UTF-8.

Bạn có thấy hướng dẫn này hữu ích không?

Làm cách nào để nhận văn bản từ một tệp trong Python?

Python - Đọc tệp dưới dạng chuỗi..
Mở tệp ở chế độ đọc.Gọi hàm mở () hàm với đường dẫn tệp làm đối số.Hàm Open () trả về một đối tượng tệp ..
Phương thức gọi () trên đối tượng tệp.Read () Phương thức trả về toàn bộ nội dung của tệp dưới dạng chuỗi ..
Đóng tệp bằng cách gọi phương thức đóng () trên đối tượng tệp ..

Làm cách nào để đọc một phần cụ thể của một tệp trong Python?

Bạn có thể tìm kiếm vào tệp tệp và sau đó đọc một số tiền nhất định từ đó.Seek cho phép bạn nhận được một phần bù cụ thể trong một tệp và sau đó bạn có thể giới hạn việc đọc của mình chỉ với số lượng byte trong phạm vi đó.Điều đó sẽ chỉ đọc dữ liệu mà bạn đang tìm kiếm.seek into the file the file and then read a certain amount from there. Seek allows you to get to a specific offset within a file, and then you can limit your read to only the number of bytes in that range. That will only read that data that you're looking for.

Đọc gì () trong Python?

Phương thức python file read () Phương thức read () trả về số byte được chỉ định từ tệp.Mặc định là -1 có nghĩa là toàn bộ tệp.returns the specified number of bytes from the file. Default is -1 which means the whole file.