Cải thiện bài viết
Lưu bài viết
Cải thiện bài viết
Lưu bài viết
Đọc is used to store data values in the form of key:value pairs. In this article we will see how to write dictionary into a file. Actually we can only write a string to a file. If we want to write a dictionary object, we either need to convert it into string using json or serialize it.
Bàn luận Storing Dictionary With Object Using Json
Approach:
- Từ điển được sử dụng để lưu trữ các giá trị dữ liệu dưới dạng khóa: các cặp giá trị. Trong bài viết này, chúng ta sẽ thấy cách viết từ điển vào một tệp. Trên thực tế, chúng ta chỉ có thể viết một chuỗi vào một tệp. Nếu chúng ta muốn viết một đối tượng từ điển, chúng ta cần phải chuyển đổi nó thành chuỗi bằng JSON hoặc tuần tự hóa nó.Json
- Phương pháp: Từ điển 1 với đối tượng sử dụng JSONDictionary in-order pass it into text file.
- Nhập JSON
- Tạo từ điển & nbsp; Đơn hàng chuyển nó vào tệp văn bản.
Code:
Python3
Mở tệp ở chế độ ghi.
Sử dụng json.dumps [] cho chuỗi JSON
import
json
details
=
{
'Name'
:
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]0
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]1
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]4
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]5
Output:
filehandler = open[filename, 'wt']
data = str[dictionary]
filehander.write[data]
2filehandler = open[filename, 'wt']
data = str[dictionary]
filehander.write[data]
3 filehandler = open[filename, 'wt']
data = str[dictionary]
filehander.write[data]
4filehandler = open[filename, 'wt']
data = str[dictionary]
filehander.write[data]
5filehandler = open[filename, 'wt']
data = str[dictionary]
filehander.write[data]
6
Approach:
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]
7filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]
8filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]
9filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]
0filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]
1filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]
223- Phương pháp 2: Sử dụng vòng lặp
- Tạo một từ điển.
- Mở một tệp ở chế độ ghi.
Code:
Python3
Ở đây chúng tôi sử dụng cho vòng lặp với cặp giá trị khóa trong đó tên tên của tên gọi & nbsp; là chìa khóa và & nbsp;
Sau đó, hàm f.write [] Chỉ cần viết ra đầu ra dưới dạng chuỗi Chuỗi%S S S S S S S S S S S S S S S S S S S S S S S S S D & NBSP;
Các
import
3
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]3
:
import
6filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]1
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]7
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]8
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
details
1filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]1
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]2
details
4import
3import
9 :
json
1
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]1
import
3json
4 :
json
6
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]6
Output:
details
5details
6 details
7details
8 details
9
=
0=
1=
2 =
3 =
4
Python3
Phương thức: 3 mà không sử dụng tải [], dumps [].
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]7
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]8
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
{
9filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]1
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]2
'Name'
2'Name'
3'Name'
4'Name'
5'Name'
6
Output:
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]05
=
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]8
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]09
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]1____150____
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]12
Syntax:
Ví dụ 3: Viết bằng mô -đun Pickleimport
filehandler = open[filename, 'wt']
data = str[dictionary]
filehander.write[data]
66
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]05
=
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]8
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]89
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]1
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]91
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]12
Lưu ý: Vì mô -đun Pickle lưu trữ dữ liệu ở dạng nhị phân, dữ liệu trong tệp không thể đọc được bởi con người.
Một từ điển trong Python là một bộ sưu tập trong đó mọi giá trị được ánh xạ tới một khóa. Chúng không được đặt hàng, có thể thay đổi và không có ràng buộc nào về loại dữ liệu của các giá trị và khóa được lưu trữ trong từ điển. Điều này làm cho nó khó khăn cho từ điển được lưu trữ dưới dạng tệp. Biết thêm về từ điển ở đây.
dictionary = {'geek': 1, 'supergeek': True, 4: 'geeky'}
- Lưu từ điển vào một tệp
- Có hai cách tiếp cận chính để lưu từ điển vào các tệp bằng Python.
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]
1. Tệp văn bản
Cách cơ bản nhất để lưu từ điển trong Python sẽ là lưu trữ chúng dưới dạng các chuỗi trong các tệp văn bản. Phương pháp này sẽ bao gồm các bước sau:
Mở tệp ở chế độ viết/nối
- Chuyển đổi từ điển thành một chuỗi
- Nhập chuỗi được chuyển đổi vào tệp bằng cách sử dụng chức năng ghi
- Đọc từ từ điển trở lại từ các tệp văn bản được lưu trữ là cồng kềnh và phương pháp này chỉ nên được sử dụng cho các chương trình nhỏ hơn và không quan trọng.
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]
Dưới đây là việc thực hiện các phương pháp trên.
Ví dụ 1: Viết vào tệp văn bản
Python3
'Name'
7=
{
:
0:
:
21:
4:
:
6
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]1
:
8____________filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]00__16
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]02
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]4
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]05
=
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]8
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]09
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]1
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]11
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]12
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]14
'Name'
5filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]16
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]18
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]19
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]4
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]22
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]24
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]12
Output:
Ví dụ 2: nối vào tệp văn bản
Python3
'Name'
7=
{
:
0:
:
21:
4:
:
6
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]1
:
8____________filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]00__16
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]02
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]4
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]05
=
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]8
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]09
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]1
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]11
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]12
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]14
'Name'
5filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]16
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]18
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]19
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]4
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]22
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]63
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]12
Output:
Ví dụ 2: nối vào tệp văn bản
Python3
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]05
=
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]8
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]09
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]1____150____
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]12
'Name'
7=
{
:
0:
:
21:
4:
:
6
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]1
:
8____________filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]00__16
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]02
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]4
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]05
=
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]8
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]09
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]1
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]11
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]12
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]94
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]18
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]19
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]4
details
5
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]22
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]9
filehandler = open[filename, 'wb'] pickle.dump[dictionary, filehandler]02
filehandler = open[filename, 'wt'] data = str[dictionary] filehander.write[data]12
Ví dụ 2: nối vào tệp văn bảnAs the pickle module stores data in binary form, the data in the file is unreadable by humans.