Hướng dẫn can you write a list to a file in python - bạn có thể viết một danh sách vào một tệp trong python không

Trong bài viết này, bạn sẽ học cách viết một danh sách vào một tệp trong Python.

Thông thường, chúng tôi yêu cầu lưu trữ một danh sách, từ điển hoặc bất kỳ cấu trúc dữ liệu trong bộ nhớ nào để lưu trữ liên tục như tệp hoặc cơ sở dữ liệu để chúng tôi có thể sử dụng lại nó bất cứ khi nào cần thiết. Ví dụ: sau khi phân tích dữ liệu, bạn có thể lưu trữ nó trong một tệp và lần tiếp theo, dữ liệu đó có thể được đọc để sử dụng trong một ứng dụng.

Có nhiều cách để viết một danh sách Python vào một tệp. Sau khi đọc bài viết này, bạn sẽ học:After reading this article, You’ll learn:

  • Viết danh sách vào tệp văn bản và đọc nó trong chương trình Python khi được yêu cầu sử dụng phương thức
    Jessa
    Eric
    Bob
    
    4 và
    Jessa
    Eric
    Bob
    
    5.
  • Cách sử dụng mô -đun Pickle Python, để tuần tự hóa và giải phóng danh sách vào một tệp. Nối tiếp có nghĩa là lưu một đối tượng danh sách vào một tệp. Deserialize có nghĩa là đọc danh sách đó trở lại vào bộ nhớ.
  • Sử dụng mô-đun JSON tích hợp để viết danh sách vào tệp JSON.

Các bước để viết danh sách vào một tệp trong Python

Python cung cấp phương thức

Jessa
Eric
Bob
4 để viết văn bản vào một tệp và phương thức
Jessa
Eric
Bob
5 để đọc một tệp. Các bước dưới đây cho thấy cách lưu dòng danh sách Python từng dòng vào một tệp văn bản.

  1. Mở tệp ở chế độ ghi

    Vượt qua đường dẫn tệp và chế độ truy cập

    Jessa
    Eric
    Bob
    
    8 cho chức năng
    Jessa
    Eric
    Bob
    
    9. Chế độ truy cập mở một tệp ở chế độ ghi. Ví dụ, ________ 20.
    For example,
    # empty list to read list from a file
    names = []
    
    # open file and read the content in a list
    with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
        for line in fp:
            # remove linebreak from a current name
            # linebreak is the last character of each line
            x = line[:-1]
    
            # add current item to the list
            names.append(x)
    
    # display list
    print(names)
    0.

  2. Lặp lại danh sách sử dụng một vòng lặp cho vòng lặp

    Sử dụng cho vòng lặp để lặp từng mục từ một danh sách. Chúng tôi lặp lại danh sách để chúng tôi có thể viết từng mục của một danh sách vào một tệp.

  3. Viết mục hiện tại vào tệp

    Trong mỗi lần lặp vòng lặp, chúng tôi nhận được mục hiện tại từ danh sách. Sử dụng phương thức

    # empty list to read list from a file
    names = []
    
    # open file and read the content in a list
    with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
        for line in fp:
            # remove linebreak from a current name
            # linebreak is the last character of each line
            x = line[:-1]
    
            # add current item to the list
            names.append(x)
    
    # display list
    print(names)
    1 để ghi mục hiện tại vào một tệp và chuyển sang lần lặp tiếp theo. Chúng tôi sẽ lặp lại bước này cho đến mục cuối cùng của một danh sách.

  4. Đóng tệp sau khi hoàn thành thao tác ghi

    Khi chúng tôi hoàn thành việc viết một danh sách vào một tệp, chúng tôi cần đảm bảo rằng tệp sẽ được đóng đúng. Sử dụng Phương thức

    # empty list to read list from a file
    names = []
    
    # open file and read the content in a list
    with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
        for line in fp:
            # remove linebreak from a current name
            # linebreak is the last character of each line
            x = line[:-1]
    
            # add current item to the list
            names.append(x)
    
    # display list
    print(names)
    2 để đóng một tệp.

Ví dụ để viết danh sách vào một tệp trong Python

# list of names
names = ['Jessa', 'Eric', 'Bob']

# open file in write mode
with open(r'E:/demos/files_demos/account/sales.txt', 'w') as fp:
    for item in names:
        # write each item on a new line
        fp.write("%s\n" % item)
    print('Done')

Lưu ý: Chúng tôi đã sử dụng phương thức

# empty list to read list from a file
names = []

# open file and read the content in a list
with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
    for line in fp:
        # remove linebreak from a current name
        # linebreak is the last character of each line
        x = line[:-1]

        # add current item to the list
        names.append(x)

# display list
print(names)
3 trong
Jessa
Eric
Bob
4 để phá vỡ các dòng để viết từng mục trên một dòng mới.
: We used the
# empty list to read list from a file
names = []

# open file and read the content in a list
with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
    for line in fp:
        # remove linebreak from a current name
        # linebreak is the last character of each line
        x = line[:-1]

        # add current item to the list
        names.append(x)

# display list
print(names)
3 in
Jessa
Eric
Bob
4 method to break the lines to write each item on a new line.

Output::

Nội dung dưới đây đã được viết trong một tập tin.

Jessa
Eric
Bob

Hướng dẫn can you write a list to a file in python - bạn có thể viết một danh sách vào một tệp trong python không
Tệp văn bản sau khi viết danh sách python vào nó

Ví dụ để đọc danh sách từ một tệp trong Python

Bây giờ, hãy để xem cách đọc cùng một danh sách từ một tệp trở lại vào bộ nhớ.

# empty list to read list from a file
names = []

# open file and read the content in a list
with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
    for line in fp:
        # remove linebreak from a current name
        # linebreak is the last character of each line
        x = line[:-1]

        # add current item to the list
        names.append(x)

# display list
print(names)

Output::

['Jessa', 'Eric', 'Bob']

Viết danh sách vào tệp mà không cần sử dụng vòng lặp

Trong ví dụ này, chúng tôi đang sử dụng một phương thức tham gia của một lớp

# empty list to read list from a file
names = []

# open file and read the content in a list
with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
    for line in fp:
        # remove linebreak from a current name
        # linebreak is the last character of each line
        x = line[:-1]

        # add current item to the list
        names.append(x)

# display list
print(names)
5 để thêm một dòng mới sau mỗi mục của một danh sách và ghi nó vào một tệp.

Phương thức

# empty list to read list from a file
names = []

# open file and read the content in a list
with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
    for line in fp:
        # remove linebreak from a current name
        # linebreak is the last character of each line
        x = line[:-1]

        # add current item to the list
        names.append(x)

# display list
print(names)
6 sẽ tham gia tất cả các mục trong danh sách vào một chuỗi, sử dụng ký tự
# empty list to read list from a file
names = []

# open file and read the content in a list
with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
    for line in fp:
        # remove linebreak from a current name
        # linebreak is the last character of each line
        x = line[:-1]

        # add current item to the list
        names.append(x)

# display list
print(names)
3 làm dấu phân cách (sẽ thêm một dòng mới sau mỗi mục danh sách).

Example::

# list of names
names = ['Jessa', 'Eric', 'Bob']

with open(r'E:/demos/files_demos/account/sales.txt', 'w') as fp:
    fp.write('\n'.join(names))

Nếu bạn muốn chuyển đổi tất cả các mục của danh sách thành một chuỗi khi viết thì hãy sử dụng biểu thức trình tạo.

# list of names
names = ['Jessa', 'Eric', 'Bob']

with open(r'E:/demos/files_demos/account/sales.txt', 'w') as fp:
    fp.write("\n".join(str(item) for item in names))

Mô -đun Pickle để ghi (tuần tự hóa) vào một tệp

Mô-đun Pickle Python được sử dụng để tuần tự hóa và khử tự động một đối tượng Python. Ví dụ: chúng ta có thể chuyển đổi bất kỳ đối tượng Python nào như Danh sách, quyết định thành một luồng ký tự bằng cách sử dụng Pickling. Luồng ký tự này chứa tất cả các thông tin cần thiết để xây dựng lại đối tượng trong tương lai.

Bất kỳ đối tượng nào trong Python đều có thể được ngâm và lưu trong lưu trữ liên tục như cơ sở dữ liệu và tệp để sử dụng sau.

Ví dụ: Pickle và ghi danh sách Python vào một tệp: Pickle and write Python list into a file

  • Đầu tiên nhập mô -đun Pickle
  • Để viết danh sách vào tệp nhị phân, hãy sử dụng chế độ truy cập ‘B, để mở tệp. Để viết, nó sẽ là
    # empty list to read list from a file
    names = []
    
    # open file and read the content in a list
    with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
        for line in fp:
            # remove linebreak from a current name
            # linebreak is the last character of each line
            x = line[:-1]
    
            # add current item to the list
            names.append(x)
    
    # display list
    print(names)
    8, và để đọc, nó sẽ là
    # empty list to read list from a file
    names = []
    
    # open file and read the content in a list
    with open(r'E:\demos\files_demos\account\sales.txt', 'r') as fp:
        for line in fp:
            # remove linebreak from a current name
            # linebreak is the last character of each line
            x = line[:-1]
    
            # add current item to the list
            names.append(x)
    
    # display list
    print(names)
    9. Hàm File Open () sẽ kiểm tra xem tệp đã tồn tại và, nếu không, sẽ tạo một. Nếu một tệp đã tồn tại, nó sẽ bị cắt cụt và nội dung mới sẽ được thêm vào khi bắt đầu một tệp.
  • Tiếp theo, phương thức Pickle từ
    ['Jessa', 'Eric', 'Bob']
    0 chuyển đổi một đối tượng Python trong bộ nhớ thành chuỗi byte và ghi nó vào một tệp nhị phân.

Example::

# Python program to store list to file using pickle module
import pickle

# write list to binary file
def write_list(a_list):
    # store list in binary file so 'wb' mode
    with open('listfile', 'wb') as fp:
        pickle.dump(names, fp)
        print('Done writing list into a binary file')

# Read list to memory
def read_list():
    # for reading also binary mode is important
    with open('sampleList', 'rb') as fp:
        n_list = pickle.load(fp)
        return n_list

# list of names
names = ['Jessa', 'Eric', 'Bob']
write_list(names)
r_names = read_list()
print('List is', r_names)

Output::

Done writing list into a binary file
List is ['Jessa', 'Eric', 'Bob']

Mô -đun JSON để ghi danh sách vào tệp JSON

Chúng ta có thể sử dụng nó trong các trường hợp sau.

  • Hầu hết thời gian, khi bạn thực hiện yêu cầu GET, bạn sẽ nhận được phản hồi ở định dạng JSON và bạn có thể lưu trữ phản hồi JSON trong một tệp để sử dụng trong tương lai hoặc cho một hệ thống cơ bản sử dụng.
  • Ví dụ: bạn có dữ liệu trong danh sách và bạn muốn mã hóa và lưu trữ nó trong một tệp dưới dạng JSON.

Example::

Trong ví dụ này, chúng tôi sẽ sử dụng mô -đun Python JSON để chuyển đổi danh sách thành định dạng JSON và ghi nó vào một tệp bằng phương thức Dump () JSON.

# Python program to store list to JSON file
import json

def write_list(a_list):
    print("Started writing list data into a json file")
    with open("names.json", "w") as fp:
        json.dump(a_list, fp)
        print("Done writing JSON data into .json file")

# Read list to memory
def read_list():
    # for reading also binary mode is important
    with open('names.json', 'rb') as fp:
        n_list = json.load(fp)
        return n_list

# assume you have the following list
names = ['Jessa', 'Eric', 'Bob']
write_list(names)
r_names = read_list()
print('List is', r_names)

Output::

Started writing list data into a json file

Done writing JSON data into .json file
List is ['Jessa', 'Eric', 'Bob']

Hướng dẫn can you write a list to a file in python - bạn có thể viết một danh sách vào một tệp trong python không
Tệp JSON sau khi viết danh sách vào nó

['Jessa', 'Eric', 'Bob']1 Phương thức để ghi danh sách các dòng vào 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. Sử dụng phương thức này khi bạn muốn viết một danh sách vào một tệp.

Jessa
Eric
Bob
0

Đây là đầu ra chúng ta đang nhận được

Jessa
Eric
Bob
1

Như bạn có thể thấy trong đầu ra, phương thức WritElineS () không thêm bất kỳ bộ phân cách dòng nào sau mỗi mục danh sách. Để khắc phục giới hạn này, chúng ta có thể sử dụng danh sách hiểu để thêm ký tự dòng mới sau mỗi phần tử trong danh sách và sau đó Chuyển danh sách cho phương thức WriteLines.
To overcome this limitation, we can use list comprehension to add the new line character after each element in the list and then pass the list to the writelines method.

Example::

Jessa
Eric
Bob
2

Output::

Jessa
Eric
Bob
3

Bạn có thể viết một mảng vào một tệp trong Python không?

Bạn chỉ có thể viết nó ra một tập tin trực tiếp..

Python có thể ghi vào một tệp văn bản không?

Python cung cấp các chức năng sẵn có để tạo, viết và đọc các tệp.Có hai loại tệp có thể được xử lý trong Python, tệp văn bản thông thường và tệp nhị phân (được viết bằng ngôn ngữ nhị phân, 0S và 1S).. There are two types of files that can be handled in python, normal text files and binary files (written in binary language, 0s, and 1s).

Bạn có thể nối vào một tập tin trong Python không?

Cách thực hành tốt nhất để viết, nối lại và đọc từ các tệp văn bản trong Python là sử dụng từ khóa.Sự cố: Trước tiên bạn bắt đầu với từ khóa.Tiếp theo, bạn mở tệp văn bản.using the with keyword. Breakdown: You first start off with the with keyword. Next, you open the text file.

Chức năng nào được sử dụng để viết danh sách chuỗi trong một tệp?

WriteLines () hàm Hàm này ghi nội dung của một danh sách vào một tệp.Theo cú pháp, danh sách các chuỗi được chuyển đến hàm writeLines () được ghi vào tệp đã mở. function This function writes the content of a list to a file. As per the syntax, the list of strings that is passed to the writelines() function is written into the opened file.