Hướng dẫn write list to txt python - ghi danh sách vào txt python

Bạn cũng có thể trải qua sau:

Example:

my_list=[1,2,3,4,5,"abc","def"]
with open('your_file.txt', 'w') as file:
    for item in my_list:
        file.write("%s\n" % item)

Output:

Trong

1

2

3

4

5

abc

def
4 các mục được lưu như:

1

2

3

4

5

abc

def

Kịch bản của bạn cũng lưu như trên.

Nếu không, bạn có thể sử dụng dưa chua

import pickle
my_list=[1,2,3,4,5,"abc","def"]
#to write
with open('your_file.txt', 'wb') as file:
    pickle.dump(my_list, file)
#to read
with open ('your_file.txt', 'rb') as file:
    Outlist = pickle.load(file)
print(Outlist)

Đầu ra: [1, 2, 3, 4, 5, 'ABC', 'def']]

Nó lưu Dump Danh sách giống như một danh sách khi chúng tôi tải nó, chúng tôi có thể đọc.

Ngoài ra bởi no___trans___pre___15 có thể giống như đầu ra trên

import simplejson as sj
my_list=[1,2,3,4,5,"abc","def"]
#To write
with open('your_file.txt', 'w') as file:
    sj.dump(my_list, file)

#To save
with open('your_file.txt', 'r') as file:
    mlist=sj.load(file)
print(mlist)

Giới thiệu

Các lập trình viên Python sử dụng mạnh mẽ các mảng, danh sách và từ điển như các cấu trúc dữ liệu tuần tự hóa. Lưu trữ các cấu trúc dữ liệu này liên tục yêu cầu một tệp hoặc cơ sở dữ liệu để hoạt động đúng.

Trong bài viết này, chúng ta sẽ xem cách viết danh sách vào tệp và cách đọc danh sách đó trở lại vào bộ nhớ.

Để ghi dữ liệu trong một tệp và để đọc dữ liệu từ một tệp, ngôn ngữ lập trình Python cung cấp các phương thức tiêu chuẩn no___trans___pre___16 và no___trans___pre___17 để xử lý một dòng duy nhất, cũng như không có nhiều dòng. Hơn nữa, cả NO___Trans___PRE___20 và các mô -đun NO___TRANS___PRE___21 cũng cho phép các cách thông minh để xử lý các bộ dữ liệu tuần tự hóa.

Sử dụng các phương thức đọc () và write ()

Để đối phó với các ký tự (chuỗi) cơ bản NO___Trans___Pre___17 và NO___Trans___PRE___16 Các phương thức hoạt động xuất sắc. Lưu một danh sách như vậy từng dòng vào tệp no___trans___pre___24 có thể được thực hiện như sau:

# Define a list of places
places = ['Berlin', 'Cape Town', 'Sydney', 'Moscow']

with open('listfile.txt', 'w') as filehandle:
    for listitem in places:
        filehandle.write(f'{listitem}\n')

NO___TRANS___PRE___25 được mở rộng bằng một dòng phá vỡ NO___TRANS___PRE___26, trước tiên, sau đó được lưu trữ vào tệp đầu ra. Bây giờ chúng ta có thể xem cách đọc toàn bộ danh sách từ tệp no___trans___pre___24 trở lại bộ nhớ:

# Define an empty list
places = []

# Open the file and read the content in a list
with open('listfile.txt', 'r') as filehandle:
    for line in filehandle:
        # Remove linebreak which is the last character of the string
        curr_place = line[:-1]
        # Add item to the list
        places.append(curr_place)

Hãy nhớ rằng bạn sẽ cần phải loại bỏ đường ngắt từ cuối chuỗi. Trong trường hợp này, nó cũng giúp chúng tôi rằng Python cũng cho phép các hoạt động danh sách trên các chuỗi. Việc loại bỏ này chỉ đơn giản được thực hiện dưới dạng hoạt động danh sách trên chính chuỗi, giữ mọi thứ trừ phần tử cuối cùng. Phần tử này chứa ký tự số no___trans___pre___26 đại diện cho đường ngắt trên các hệ thống Unix/Linux.

Sử dụng các phương thức WriteLines () và Readlines ()

Như đã đề cập ở đầu bài viết này, Python cũng chứa hai phương thức - no___trans___pre___18 và no___trans___pre___19 - để viết và đọc nhiều dòng trong một bước, tương ứng. Hãy viết toàn bộ danh sách vào một tệp trên đĩa:

# Define a list of places
places_list = ['Berlin', 'Cape Town', 'Sydney', 'Moscow']

with open('listfile.txt', 'w') as filehandle:
    filehandle.writelines(f"{place for place in places_list}\n")

Để đọc toàn bộ danh sách từ một tệp trên đĩa chúng ta cần:

# Define an empty list
places = []

# Open the file and read the content in a list
with open('listfile.txt', 'r') as filehandle:
    filecontents = filehandle.readlines()
    for line in filecontents:
        # Remove linebreak which is the last character of the string
        curr_place = line[:-1]
        # Add item to the list
        places.append(curr_place)

Mã trên theo cách tiếp cận truyền thống hơn được mượn từ các ngôn ngữ lập trình khác. Hãy viết nó theo một cách pythonic hơn:

# Define an empty list
places = []

# Open the file and read the content in a list
with open('listfile.txt', 'r') as filehandle:
    places = [current_place.rstrip() for current_place in filehandle.readlines()]

Đầu tiên, nội dung tệp được đọc qua NO___TRANS___PRE___19. Thứ hai, trong vòng lặp no___trans___pre___32 từ mỗi dòng, ký tự ngắt dòng được xóa bằng phương pháp NO___TRANS___PRE___33. Thứ ba, chuỗi được thêm vào danh sách các địa điểm dưới dạng mục danh sách mới.

So với danh sách trước khi mã nhỏ gọn hơn nhiều, nhưng có thể khó đọc hơn đối với các lập trình viên Python mới bắt đầu.

Sử dụng mô -đun joblib

Các phương pháp ban đầu được giải thích cho đến bây giờ lưu trữ danh sách theo cách mà con người vẫn có thể đọc nó - hoàn toàn là một danh sách tuần tự trong một tệp. Điều này là tuyệt vời để tạo các báo cáo đơn giản hoặc xuất các tệp xuất cho người dùng để sử dụng thêm, chẳng hạn như các tệp CSV. Tuy nhiên - nếu mục đích của bạn là chỉ tuần tự hóa danh sách vào một tệp, điều đó có thể được tải sau đó, không cần phải lưu trữ nó ở định dạng có thể đọc được của con người.

Mô -đun NO___Trans___Pre___34 cung cấp cách dễ nhất để đổ đối tượng Python (có thể là bất kỳ đối tượng nào thực sự):

import joblib

places = ['Berlin', 'Cape Town', 'Sydney', 'Moscow']
# Dumps into file
joblib.dump(places, 'places.sav')
# Loads from file
places = joblib.load('places.sav')
print(places) # ['Berlin', 'Cape Town', 'Sydney', 'Moscow']

import simplejson as sj
my_list=[1,2,3,4,5,"abc","def"]
#To write
with open('your_file.txt', 'w') as file:
    sj.dump(my_list, file)

#To save
with open('your_file.txt', 'r') as file:
    mlist=sj.load(file)
print(mlist)
4 vẫn là cách đơn giản nhất và sạch nhất để tuần tự hóa các đối tượng theo định dạng hiệu quả và tải chúng sau. Bạn có thể sử dụng bất kỳ định dạng tùy ý nào, chẳng hạn như no___trans___pre___36, no___trans___pre___37, v.v ... Nó không thực sự quan trọng - cả hai no___trans___pre___34 và các lựa chọn thay thế như no___trans___pre___20 sẽ đọc các tệp.

Sử dụng mô -đun Pickle

Thay thế cho NO___Trans___Pre___34, chúng ta có thể sử dụng NO___TRANS___PRE___20! Phương thức NO___Trans___PRE___42 lưu trữ danh sách hiệu quả dưới dạng luồng dữ liệu nhị phân. Đầu tiên, tệp đầu ra NO___TRANS___PRE___43 được mở để viết nhị phân (no___trans___pre___44). Thứ hai, danh sách được lưu trữ trong tệp đã mở bằng phương thức NO___Trans___PRE___42:

1

2

3

4

5

abc

def
0

Là bước tiếp theo, chúng tôi đọc danh sách từ tệp như sau. Đầu tiên, tệp đầu ra NO___TRANS___PRE___43 được mở nhị phân để đọc (no___trans___pre___47). Thứ hai, danh sách các địa điểm được tải từ tệp bằng phương thức NO___Trans___PRE___48:

1

2

3

4

5

abc

def
1

Hai ví dụ ở đây chứng minh việc sử dụng chuỗi. Mặc dù,

import pickle
my_list=[1,2,3,4,5,"abc","def"]
#to write
with open('your_file.txt', 'wb') as file:
    pickle.dump(my_list, file)
#to read
with open ('your_file.txt', 'rb') as file:
    Outlist = pickle.load(file)
print(Outlist)
0 hoạt động với tất cả các loại đối tượng python như chuỗi, số, cấu trúc tự xác định và mọi cấu trúc dữ liệu tích hợp khác cung cấp.

Sử dụng định dạng JSON

Định dạng dữ liệu nhị phân

import pickle
my_list=[1,2,3,4,5,"abc","def"]
#to write
with open('your_file.txt', 'wb') as file:
    pickle.dump(my_list, file)
#to read
with open ('your_file.txt', 'rb') as file:
    Outlist = pickle.load(file)
print(Outlist)
0 sử dụng là cụ thể cho Python. Để cải thiện khả năng tương tác giữa các chương trình khác nhau, ký hiệu đối tượng JavaScript (JSON) cung cấp một lược đồ dễ sử dụng và có thể đọc được, và do đó trở nên rất phổ biến để tuần tự hóa các tệp và chia sẻ chúng qua API.

Kiểm tra hướng dẫn thực hành của chúng tôi, hướng dẫn thực tế để học Git, với các hoạt động tốt nhất, các tiêu chuẩn được công nghiệp chấp nhận và bao gồm bảng gian lận. Ngừng các lệnh git googling và thực sự tìm hiểu nó!

Ví dụ sau đây cho thấy cách viết danh sách các loại biến hỗn hợp vào tệp đầu ra bằng mô -đun JSON. Sau khi mở tệp đầu ra để viết, phương thức no___trans___pre___42 lưu trữ danh sách cơ bản trong tệp bằng ký hiệu JSON:

1

2

3

4

5

abc

def
2

Đọc nội dung của tệp đầu ra trở lại vào bộ nhớ cũng đơn giản như viết dữ liệu. Phương thức tương ứng với no___trans___pre___42 được đặt tên là NO___TRANS___PRE___48:

1

2

3

4

5

abc

def
3

Sự kết luận

Các phương thức khác nhau, chúng tôi đã hiển thị ở trên phạm vi từ dữ liệu viết/đọc đơn giản cho đến việc đổ/tải dữ liệu qua các luồng nhị phân bằng Pickle và JSON. Điều này đơn giản hóa việc lưu trữ một danh sách một cách kiên trì và đọc lại vào bộ nhớ.

Làm cách nào để biến một danh sách thành một chuỗi trong Python?

Để chuyển đổi danh sách thành một chuỗi, hãy sử dụng khả năng hiểu danh sách Python và hàm tham gia (). Sự hiểu biết danh sách sẽ đi qua từng phần tử một và phương thức tham gia () sẽ kết hợp các phần tử của danh sách thành một chuỗi mới và trả về nó làm đầu ra.use Python List Comprehension and the join() function. The list comprehension will traverse the elements one by one, and the join() method will concatenate the list's elements into a new string and return it as output.

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

Sử dụng tệp ...
a_list = ["abc", "def", "ghi"].
TextFile = Open ("a_file.txt", "w").
cho phần tử trong a_list:.
TextFile.Viết (phần tử + "\ n").
TextFile.gần().

Làm thế nào để bạn viết nhiều dòng trong một tệp văn bản trong Python?

Sử dụng writeLines () để viết nhiều dòng vào một tệp..
my_file = open ("test_file.txt", "w").
text_list = ["ab \ n", "cd \ n", "ef"].
tập tin của tôi.WriteLines (Text_List).
my_file = mở ("test_file.txt").
nội dung = my_file.đọc().
tập tin của tôi.Đóng () Đóng tệp ..
print(content).

Làm cách nào để lưu trữ một danh sách trong Python?

5.1 Biến một chuỗi thành một danh sách..
Tạo một danh sách trống được gọi là my_list ..
Mở một vòng lặp cho biến được khai báo "Xin chào" trong các trích dẫn ..
Sử dụng từ khóa Char làm biến vòng lặp.....
Sử dụng thuộc tính Phụ lục được tích hợp trong tất cả Danh sách Python để thêm char ở cuối danh sách ..
Khi vòng lặp kết thúc, danh sách cuối cùng được in ..