Hướng dẫn how do i read a text file into a list in python? - làm cách nào để đọc một tệp văn bản thành một danh sách trong python?

Xem thảo luận

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết

    Đọc

    Bàn luận

    Hướng dẫn how do i read a text file into a list in python? - làm cách nào để đọc một tệp văn bản thành một danh sách trong python?

    Trong bài viết này, chúng ta sẽ xem cách đọc các tệp văn bản vào danh sách trong Python.

    Tệp để trình diễn:

    Ví dụ 1: Chuyển đổi tệp văn bản thành một danh sách bằng cách chia văn bản về sự xuất hiện của ‘.The read bytes are returned as a string. Reads n bytes, or the full file if no n is given.

    Chúng tôi mở tệp trong chế độ đọc, sau đó đọc tất cả văn bản bằng cách đọc () và lưu trữ nó vào một biến có tên là dữ liệu. Sau đó, chúng tôi thay thế phần cuối của dòng (‘/n,) bằng‘ ‘và chia văn bản hơn nữa khi nhìn thấy bằng cách sử dụng các hàm chia () và thay thế (). & nbsp;

    Đọc (): Các byte đọc được trả về dưới dạng chuỗi. Đọc n byte hoặc tệp đầy đủ nếu không có n được đưa ra.The split() method creates a list from a string. The separator can be specified; the default separator is any whitespace.

    Cú pháp: FileObject.Read (kích thước)

    Split (): Phương thức chia () tạo một danh sách từ một chuỗi. Phân tách có thể được chỉ định; Bộ phân cách mặc định là bất kỳ khoảng trắng nào. The replace() method substitutes one phrase for another.

    Cú pháp: String.Split (Dấu tách, MaxSplit)

    Code:

    Python3

    Thay thế (): Phương thức thay thế () thay thế một cụm từ khác.

    Cú pháp: String.replace (trước_value, value_to_be_replace_with, đếm)

    my_file

    ['Hello geeks', 'Welcome to geeksforgeeks']
    0
    ['Hello geeks', 'Welcome to geeksforgeeks']
    1
    ['Hello geeks', 'Welcome to geeksforgeeks']
    2
    ['Hello geeks', 'Welcome to geeksforgeeks']
    3
    ['Hello geeks', 'Welcome to geeksforgeeks']
    4
    ['Hello geeks', 'Welcome to geeksforgeeks']
    5
    ['Hello geeks', 'Welcome to geeksforgeeks']
    6

    list_of_lists = []
    
    9
    with open('data') as f:
        for line in f:
            inner_list = [elt.strip() for elt in line.split(',')]
            # in alternative, if you need to use the file content as numbers
            # inner_list = [int(elt.strip()) for elt in line.split(',')]
            list_of_lists.append(inner_list)
    
    0

    with open('data') as f:
        for line in f:
            inner_list = [elt.strip() for elt in line.split(',')]
            # in alternative, if you need to use the file content as numbers
            # inner_list = [int(elt.strip()) for elt in line.split(',')]
            list_of_lists.append(inner_list)
    
    1

    Output:

    ['Hello geeks Welcome to geeksforgeeks']

    ['Hello geeks', 'Welcome to geeksforgeeks']7['Hello geeks', 'Welcome to geeksforgeeks']0 ['Hello geeks', 'Welcome to geeksforgeeks']9onverting a text file into a list by splitting the text on the occurrence of newline (‘\n’ )

    list_of_lists = []
    
    0____10
    list_of_lists = []
    
    2
    list_of_lists = []
    
    3____
    ['Hello geeks', 'Welcome to geeksforgeeks']
    4
    list_of_lists = []
    
    5
    list_of_lists = []
    
    6
    list_of_lists = []
    
    7
    ['Hello geeks', 'Welcome to geeksforgeeks']
    6

    Python3

    Thay thế (): Phương thức thay thế () thay thế một cụm từ khác.

    Cú pháp: String.replace (trước_value, value_to_be_replace_with, đếm)

    my_file

    ['Hello geeks', 'Welcome to geeksforgeeks']
    0
    ['Hello geeks', 'Welcome to geeksforgeeks']
    1
    ['Hello geeks', 'Welcome to geeksforgeeks']
    2
    ['Hello geeks', 'Welcome to geeksforgeeks']
    3
    ['Hello geeks', 'Welcome to geeksforgeeks']
    4
    ['Hello geeks', 'Welcome to geeksforgeeks']
    5
    ['Hello geeks', 'Welcome to geeksforgeeks']
    6

    list_of_lists = []
    
    9
    with open('data') as f:
        for line in f:
            inner_list = [elt.strip() for elt in line.split(',')]
            # in alternative, if you need to use the file content as numbers
            # inner_list = [int(elt.strip()) for elt in line.split(',')]
            list_of_lists.append(inner_list)
    
    0

    with open('data') as f:
        for line in f:
            inner_list = [elt.strip() for elt in line.split(',')]
            # in alternative, if you need to use the file content as numbers
            # inner_list = [int(elt.strip()) for elt in line.split(',')]
            list_of_lists.append(inner_list)
    
    1

    Output:

    ['Hello geeks', 'Welcome to geeksforgeeks']

    Vì vậy, bạn muốn tạo một danh sách các danh sách ... chúng ta cần bắt đầu với một danh sách trống

    list_of_lists = []
    

    Tiếp theo, chúng tôi đọc nội dung tệp, từng dòng

    with open('data') as f:
        for line in f:
            inner_list = [elt.strip() for elt in line.split(',')]
            # in alternative, if you need to use the file content as numbers
            # inner_list = [int(elt.strip()) for elt in line.split(',')]
            list_of_lists.append(inner_list)
    

    Một trường hợp sử dụng phổ biến là dữ liệu cột, nhưng các đơn vị lưu trữ của chúng tôi là các hàng của tệp, mà chúng tôi đã đọc từng cái một, vì vậy bạn có thể muốn chuyển đổi danh sách danh sách của mình. Điều này có thể được thực hiện với thành ngữ sau

    by_cols = zip(*list_of_lists)
    

    Một cách sử dụng phổ biến khác là đặt tên cho mỗi cột

    col_names = ('apples sold', 'pears sold', 'apples revenue', 'pears revenue')
    by_names = {}
    for i, col_name in enumerate(col_names):
        by_names[col_name] = by_cols[i]
    

    để bạn có thể hoạt động trên các mục dữ liệu đồng nhất

     mean_apple_prices = [money/fruits for money, fruits in
                         zip(by_names['apples revenue'], by_names['apples_sold'])]
    

    Hầu hết những gì tôi đã viết có thể được tăng tốc bằng mô -đun

    col_names = ('apples sold', 'pears sold', 'apples revenue', 'pears revenue')
    by_names = {}
    for i, col_name in enumerate(col_names):
        by_names[col_name] = by_cols[i]
    
    1, từ thư viện tiêu chuẩn. Một mô -đun bên thứ ba khác là
    col_names = ('apples sold', 'pears sold', 'apples revenue', 'pears revenue')
    by_names = {}
    for i, col_name in enumerate(col_names):
        by_names[col_name] = by_cols[i]
    
    2, cho phép bạn tự động hóa hầu hết các khía cạnh của phân tích dữ liệu điển hình (nhưng có một số phụ thuộc).


    Cập nhật trong khi ở Python 2

    col_names = ('apples sold', 'pears sold', 'apples revenue', 'pears revenue')
    by_names = {}
    for i, col_name in enumerate(col_names):
        by_names[col_name] = by_cols[i]
    
    3 trả về một danh sách khác nhau (được chuyển đổi), trong Python 3, tình huống đã thay đổi và
    col_names = ('apples sold', 'pears sold', 'apples revenue', 'pears revenue')
    by_names = {}
    for i, col_name in enumerate(col_names):
        by_names[col_name] = by_cols[i]
    
    3 trả về một đối tượng zip không thể đăng ký.

    Nếu bạn cần truy cập được lập chỉ mục, bạn có thể sử dụng

    by_cols = list(zip(*list_of_lists))
    

    Điều đó cung cấp cho bạn một danh sách các danh sách trong cả hai phiên bản của Python.

    Mặt khác, nếu bạn không cần truy cập được lập chỉ mục và những gì bạn muốn chỉ là xây dựng một từ điển được lập chỉ mục bằng tên cột, một đối tượng zip vẫn ổn ...

    file = open('some_data.csv')
    names = get_names(next(file))
    columns = zip(*((x.strip() for x in line.split(',')) for line in file)))
    d = {}
    for name, column in zip(names, columns): d[name] = column
    

    Làm thế nào để bạn tạo một danh sách từ một tệp văn bản trong Python?

    Phương thức writeLines () để viết một danh sách các dòng vào một tệp. Chúng ta có thể viết nhiều dòng cùng một lúc bằng phương thức writeLines (). Ví dụ: chúng ta có thể chuyển một danh sách các chuỗi để thêm vào tệp. to write a list of lines to a file. We can write multiple lines at once using the writelines() method. For example, we can pass a list of strings to add to the file.

    Làm cách nào để chuyển đổi tệp văn bản thành danh sách?

    Sử dụng str ...
    a_file = open ("sample.txt", "r").
    list_of_lists = [].
    Đối với dòng trong a_file:.
    Striped_line = Line.dải ().
    line_list = Striped_line.tách ra().
    list_of_lists.ỨNG DỤNG (LINE_LIST).
    một tập tin.gần().
    print(list_of_lists).

    Làm thế nào để bạn đọc một tệp văn bản vào một danh sách hoặc một mảng có python?

    Linked..
    Python đọc tệp văn bản thành một mảng các từ ..
    -1.Cách chuyển đổi danh sách thành 20 mảng cột ..
    Sao chép tệp văn bản từ Linux sang biến Python ..
    -2.Đọc giá trị số từ tệp và đặt nó dưới dạng một mảng ..
    Sử dụng các tệp TXT để truy xuất câu hỏi và nhiều câu trả lời ..
    -3.Chuyển đổi tệp .txt thành một danh sách các số nguyên trong Python ..

    Làm thế nào để bạn chia một tệp thành một danh sách trong Python?

    Ví dụ 1: Sử dụng phương thức splutLines (), phương thức read () đọc dữ liệu từ tệp được lưu trữ trong biến file_data.Phương thức splitlines () chia dữ liệu thành các dòng và trả về một đối tượng danh sách.Sau khi in ra danh sách, tệp được đóng bằng phương thức đóng ().Using the splitlines() the read() method reads the data from the file which is stored in the variable file_data. splitlines() method splits the data into lines and returns a list object. After printing out the list, the file is closed using the close() method.