Hướng dẫn how do you read the contents of a file in a list in python? - làm thế nào để bạn đọc nội dung của một tệp trong danh sách trong python?

Hai cách để đọc tệp vào danh sách trong Python (lưu ý đây không phải là hoặc) -

  1. Sử dụng with - được hỗ trợ từ Python 2.5 trở lên
  2. Sử dụng toàn bộ danh sách

1. Sử dụng with

Đây là cách pythonic để mở và đọc các tập tin.

#Sample 1 - elucidating each step but not memory efficient
lines = []
with open("C:\name\MyDocuments\numbers") as file:
    for line in file: 
        line = line.strip() #or some other preprocessing
        lines.append(line) #storing everything in memory!

#Sample 2 - a more pythonic and idiomatic way but still not memory efficient
with open("C:\name\MyDocuments\numbers") as file:
    lines = [line.strip() for line in file]

#Sample 3 - a more pythonic way with efficient memory usage. Proper usage of with and file iterators. 
with open("C:\name\MyDocuments\numbers") as file:
    for line in file:
        line = line.strip() #preprocess line
        doSomethingWithThisLine(line) #take action on line instead of storing in a list. more memory efficient at the cost of execution speed.

.strip() được sử dụng cho từng dòng của tệp để xóa ký tự dòng

data = [line.strip() for line in open("C:/name/MyDocuments/numbers", 'r')]
0 mà mỗi dòng có thể có. Khi with kết thúc, tệp sẽ được đóng tự động cho bạn. Điều này đúng ngay cả khi một ngoại lệ được nêu ra bên trong nó.

2. Sử dụng danh sách hiểu biết

Điều này có thể được xem xét không hiệu quả vì bộ mô tả tệp có thể không được đóng ngay lập tức. Có thể là một vấn đề tiềm năng khi điều này được gọi bên trong một hàm mở hàng ngàn tệp.

data = [line.strip() for line in open("C:/name/MyDocuments/numbers", 'r')]

Lưu ý rằng việc đóng tệp là phụ thuộc thực hiện. Thông thường các biến không sử dụng là rác được thu thập bởi thông dịch viên Python. Trong CPython (phiên bản phiên dịch thông thường từ Python.org), nó sẽ xảy ra ngay lập tức, vì trình thu gom rác của nó hoạt động bằng cách đếm tham chiếu. Trong một thông dịch viên khác, như Jython hoặc Iron Python, có thể có một sự chậm trễ.

Hướng dẫn how do you read the contents of a file in a list in python? - làm thế nào để bạn đọc nội dung của một tệp trong danh sách trong python?

Nếu toàn bộ nội dung của tệp là tất cả trên một dòng, hàm file.ReadLines () sẽ trả về danh sách chứa một mục thay vì danh sách các yếu tố riêng lẻ.

Để đọc FileInto Danh sách trong Python, hãy sử dụng hàm File.Read () để trả về toàn bộ nội dung của tệp dưới dạng chuỗi và sau đó sử dụng hàm chuỗi.split () để chia tệp văn bản thành danh sách.read a file into a list in Python, use the file.read() function to return the entire content of the file as a string and then use the string.split() function to split a text file into a list.

Để đọc một tệp trong python, hãy sử dụng hàm file.read (). Chuỗi chia () là một hàm Python tích hợp để chia chuỗi thành một danh sách.file.read() function. The string split() is a built-in Python function that splits the string into a list.

Phương thức chia () trả về danh sách các chuỗi sau khi phá chuỗi đã cho bằng một dấu phân cách được chỉ định.split() method returns the list of strings after breaking the given string by a specified separator.

Hãy để xác định tệp văn bản Apple.txt trong cùng thư mục với tệp chương trình Python của chúng tôi.

apple, microsoft, amazon, alphabet, facebook

Đây là một giá trị được phân tách bằng dấu phẩy bên trong tệp apple.txt & nbsp;.apple.txt file.

Chúng tôi sẽ đọc tệp này bằng hàm python.read () và chia chuỗi vào danh sách.Python file.read() function and split the string into the list.

txt_file = open("apple.txt", "r")
file_content = txt_file.read()
print("The file content are: ", file_content)

content_list = file_content.split(",")
txt_file.close()
print("The list is: ", content_list)

Đầu ra

The file content are:  apple, microsoft, amazon, alphabet, facebook
The list is:  ['apple', 'microsoft', 'amazon', 'alphabet', 'facebook']

Và bạn có thể thấy rằng chúng tôi đọc thành công một nội dung tệp vào danh sách.

Sử dụng hàm file.Readlines ()

Các đường đọc () là một phương thức Python tích hợp, trả về một danh sách chứa từng dòng trong tệp dưới dạng phần tử danh sách. Hàm readlines () trả về tất cả các dòng trong tệp dưới dạng danh sách trong đó mỗi dòng là một mục trong đối tượng danh sách.readlines() is a built-in Python method that returns a list containing each line in the file as a list element. The readlines() function returns all the lines in the file as a list where each line is an item in the list object.

txt_file = open("apple.txt", "r")

content_list = txt_file.readlines()
print(content_list)

Đầu ra

['apple, microsoft, amazon, alphabet, facebook']

Và bạn có thể thấy rằng chúng tôi đọc thành công một nội dung tệp vào danh sách.

Sử dụng hàm file.Readlines ()

Các đường đọc () là một phương thức Python tích hợp, trả về một danh sách chứa từng dòng trong tệp dưới dạng phần tử danh sách. Hàm readlines () trả về tất cả các dòng trong tệp dưới dạng danh sách trong đó mỗi dòng là một mục trong đối tượng danh sách.readlines() reads until EOF using readline() and returns a list containing the lines.

Bạn có thể thấy rằng chúng tôi đọc tệp văn bản vào một danh sách bằng hàm file.ReadLines () trong một bước.