Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

Tôi có vấn đề với việc thay đổi giá trị dict và lưu dict cho một tệp văn bản (định dạng phải giống nhau), tôi chỉ muốn thay đổi trường

def change(mdict,b,c,d,e):
    a=input('ID')
    if a in mdict:
        d= str(input('phone'))
        mdict[a]=b+':'+c+':'+d
    else:
        print('not')
0.

Tệp văn bản của tôi là định dạng sau:

memberID:member_name:member_email:member_phone

Và tôi chia tệp văn bản với:

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e

Khi tôi cố gắng thay đổi

def change(mdict,b,c,d,e):
    a=input('ID')
    if a in mdict:
        d= str(input('phone'))
        mdict[a]=b+':'+c+':'+d
    else:
        print('not')
0 được lưu trữ trong
def change(mdict,b,c,d,e):
    a=input('ID')
    if a in mdict:
        d= str(input('phone'))
        mdict[a]=b+':'+c+':'+d
    else:
        print('not')
2, giá trị đã thay đổi không chảy bằng khóa,

def change(mdict,b,c,d,e):
    a=input('ID')
    if a in mdict:
        d= str(input('phone'))
        mdict[a]=b+':'+c+':'+d
    else:
        print('not')

Và làm thế nào để lưu dict cho một tệp văn bản có cùng định dạng?

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

Martineau

Huy hiệu vàng 116K2525 gold badges161 silver badges286 bronze badges

Đã hỏi ngày 5 tháng 10 năm 2013 lúc 18:34Oct 5, 2013 at 18:34

Xueyuan Wangxueyuan WangXueYuan Wang

2.1712 Huy hiệu vàng12 Huy hiệu bạc3 Huy hiệu đồng2 gold badges12 silver badges3 bronze badges

Python có mô -đun dưa chua chỉ cho loại điều này.

Các chức năng này là tất cả những gì bạn cần để lưu và tải hầu hết mọi đối tượng:

with open('saved_dictionary.pkl', 'wb') as f:
    pickle.dump(dictionary, f)
        
with open('saved_dictionary.pkl', 'rb') as f:
    loaded_dict = pickle.load(f)

Để lưu bộ sưu tập Python, có mô -đun kệ.

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

Đã trả lời ngày 5 tháng 10 năm 2013 lúc 18:50Oct 5, 2013 at 18:50

5

Pickle có lẽ là lựa chọn tốt nhất, nhưng trong trường hợp mọi người tự hỏi làm thế nào để lưu và tải từ điển vào một tệp bằng cách sử dụng Numpy:

import numpy as np

# Save
dictionary = {'hello':'world'}
np.save('my_file.npy', dictionary) 

# Load
read_dictionary = np.load('my_file.npy',allow_pickle='TRUE').item()
print(read_dictionary['hello']) # displays "world"

FYI: Trình xem tệp NPY

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

10xAI

1551 Huy hiệu bạc8 Huy hiệu đồng1 silver badge8 bronze badges

Đã trả lời ngày 26 tháng 8 năm 2015 lúc 0:05Aug 26, 2015 at 0:05

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

8

Chúng tôi cũng có thể sử dụng mô -đun

def change(mdict,b,c,d,e):
    a=input('ID')
    if a in mdict:
        d= str(input('phone'))
        mdict[a]=b+':'+c+':'+d
    else:
        print('not')
3 trong trường hợp khi từ điển hoặc một số dữ liệu khác có thể dễ dàng được ánh xạ tới định dạng JSON. in the case when dictionaries or some other data can be easily mapped to JSON format.

import json

# Serialize data into file:
json.dump( data, open( "file_name.json", 'w' ) )

# Read data from file:
data = json.load( open( "file_name.json" ) )

Giải pháp này mang lại nhiều lợi ích, ví dụ như hoạt động cho Python 2.x và Python 3.x ở dạng không thay đổi và ngoài ra, dữ liệu được lưu ở định dạng JSON có thể dễ dàng chuyển giữa nhiều nền tảng hoặc chương trình khác nhau. Dữ liệu này cũng có thể đọc được con người., eg works for Python 2.x and Python 3.x in an unchanged form and in addition, data saved in JSON format can be easily transferred between many different platforms or programs. This data are also human-readable.

Đã trả lời ngày 11 tháng 3 năm 2019 lúc 19:59Mar 11, 2019 at 19:59

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

Simhumilecosimhumilecosimhumileco

29K16 Huy hiệu vàng129 Huy hiệu bạc108 Huy hiệu đồng16 gold badges129 silver badges108 bronze badges

2

Lưu và tải Dict vào Tệp:

def save_dict_to_file(dic):
    f = open('dict.txt','w')
    f.write(str(dic))
    f.close()

def load_dict_from_file():
    f = open('dict.txt','r')
    data=f.read()
    f.close()
    return eval(data)

Đã trả lời ngày 27 tháng 8 năm 2018 lúc 17:57Aug 27, 2018 at 17:57

JungleJetJungleJetjunglejet

2472 Huy hiệu bạc2 Huy hiệu đồng2 silver badges2 bronze badges

Vì Pickle có một số mối quan tâm về bảo mật và chậm (nguồn), tôi sẽ đi cho JSON, vì nó nhanh, tích hợp, có thể đọc được và có thể thay thế cho con người:

import json
data = {'another_dict': {'a': 0, 'b': 1}, 'a_list': [0, 1, 2, 3]}
# e.g. file = './data.json' 
with open(file, 'w') as f: 
    json.dump(data, f)

Đọc là tương tự dễ dàng:

with open(file, 'r') as f:
    data = json.load(f)

Điều này tương tự như câu trả lời này, nhưng thực hiện xử lý tệp một cách chính xác.

Nếu việc cải thiện hiệu suất vẫn chưa đủ, tôi thực sự khuyên bạn nên

def change(mdict,b,c,d,e):
    a=input('ID')
    if a in mdict:
        d= str(input('phone'))
        mdict[a]=b+':'+c+':'+d
    else:
        print('not')
4, thư viện JSON nhanh, chính xác cho Python xây dựng khi bị rỉ sét.

Đã trả lời ngày 14 tháng 10 năm 2020 lúc 14:19Oct 14, 2020 at 14:19

Michael Dornermichael DornerMichael Dorner

15.5K11 Huy hiệu vàng78 Huy hiệu bạc108 Huy hiệu đồng11 gold badges78 silver badges108 bronze badges

2

Tôi không chắc câu hỏi đầu tiên của bạn là gì, nhưng nếu bạn muốn lưu từ điển vào tệp, bạn nên sử dụng thư viện

def change(mdict,b,c,d,e):
    a=input('ID')
    if a in mdict:
        d= str(input('phone'))
        mdict[a]=b+':'+c+':'+d
    else:
        print('not')
3. Tra cứu tài liệu về tải và đặt các chức năng.

Francesco Boi

7.59213 Huy hiệu vàng69 Huy hiệu bạc110 Huy hiệu đồng13 gold badges69 silver badges110 bronze badges

Đã trả lời ngày 5 tháng 10 năm 2013 lúc 18:43Oct 5, 2013 at 18:43

JohnjohnJohn

5713 Huy hiệu bạc10 Huy hiệu đồng3 silver badges10 bronze badges

3

Tôi sẽ khuyên bạn nên lưu dữ liệu của bạn bằng định dạng JSON thay vì định dạng Pickle vì các tệp của JSON có thể đọc được, điều này giúp cho việc gỡ lỗi của bạn dễ dàng hơn vì dữ liệu của bạn nhỏ. Các tệp JSON cũng được sử dụng bởi các chương trình khác để đọc và ghi dữ liệu. Bạn có thể đọc thêm về nó ở đây

Bạn sẽ cần cài đặt mô -đun JSON, bạn có thể làm như vậy với PIP:

pip install json


# To save the dictionary into a file:
json.dump( data, open( "myfile.json", 'w' ) )

Điều này tạo ra một tệp JSON với tên MyFile.

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e
0

Điều này đọc và lưu trữ dữ liệu myfile.json trong một đối tượng dữ liệu.

blueseal

2.4756 Huy hiệu vàng26 Huy hiệu bạc40 Huy hiệu đồng6 gold badges26 silver badges40 bronze badges

Đã trả lời ngày 17 tháng 11 năm 2019 lúc 10:45Nov 17, 2019 at 10:45

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

Đối với một từ điển của các chuỗi như bản bạn đang xử lý, nó có thể được thực hiện chỉ bằng khả năng xử lý văn bản tích hợp của Python.

(Lưu ý điều này sẽ không hoạt động nếu các giá trị là một cái gì đó khác.)

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e
1

Đã trả lời ngày 5 tháng 10 năm 2013 lúc 22:22Oct 5, 2013 at 22:22

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

Martineaumartineaumartineau

Huy hiệu vàng 116K2525 gold badges161 silver badges286 bronze badges

2

Đã hỏi ngày 5 tháng 10 năm 2013 lúc 18:34

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e
2

Xueyuan Wangxueyuan Wang

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e
3

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

2.1712 Huy hiệu vàng12 Huy hiệu bạc3 Huy hiệu đồngMay 10, 2021 at 22:55

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

Gary02127Gary02127Gary02127

Python có mô -đun dưa chua chỉ cho loại điều này.1 gold badge23 silver badges28 bronze badges

Các chức năng này là tất cả những gì bạn cần để lưu và tải hầu hết mọi đối tượng:

Để lưu bộ sưu tập Python, có mô -đun kệ.

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e
4

Đã trả lời ngày 5 tháng 10 năm 2013 lúc 18:50

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e
5

Pickle có lẽ là lựa chọn tốt nhất, nhưng trong trường hợp mọi người tự hỏi làm thế nào để lưu và tải từ điển vào một tệp bằng cách sử dụng Numpy:

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e
6

FYI: Trình xem tệp NPYOct 5, 2013 at 18:59

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

1551 Huy hiệu bạc8 Huy hiệu đồngmguijarr

Đã trả lời ngày 26 tháng 8 năm 2015 lúc 0:056 gold badges43 silver badges71 bronze badges

2

Chúng tôi cũng có thể sử dụng mô -đun

def change(mdict,b,c,d,e):
    a=input('ID')
    if a in mdict:
        d= str(input('phone'))
        mdict[a]=b+':'+c+':'+d
    else:
        print('not')
3 trong trường hợp khi từ điển hoặc một số dữ liệu khác có thể dễ dàng được ánh xạ tới định dạng JSON.

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e
7

Giải pháp này mang lại nhiều lợi ích, ví dụ như hoạt động cho Python 2.x và Python 3.x ở dạng không thay đổi và ngoài ra, dữ liệu được lưu ở định dạng JSON có thể dễ dàng chuyển giữa nhiều nền tảng hoặc chương trình khác nhau. Dữ liệu này cũng có thể đọc được con người.Nov 7, 2017 at 23:38

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

Đã trả lời ngày 11 tháng 3 năm 2019 lúc 19:59wordsforthewise

Simhumilecosimhumileco5 gold badges81 silver badges111 bronze badges

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e
8

29K16 Huy hiệu vàng129 Huy hiệu bạc108 Huy hiệu đồng

mdict={}
for line in file:
    x=line.split(':')
    a=x[0]
    b=x[1]
    c=x[2]
    d=x[3]
    e=b+':'+c+':'+d

    mdict[a]=e
9

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

Lưu và tải Dict vào Tệp:Feb 18, 2021 at 6:10

Hướng dẫn can you save a python dictionary to file? - bạn có thể lưu một từ điển python vào tệp không?

Một từ điển Python có thể được lưu dưới dạng tệp CSV không?

Sử dụng mô -đun CSV từ thư viện tiêu chuẩn của Python. Cách dễ nhất là mở tệp CSV ở chế độ 'W' với hàm trợ giúp của hàm Open () và ghi cặp giá trị khóa trong biểu mẫu phân tách dấu phẩy. Mô -đun CSV chứa phương thức DictWriter yêu cầu tên của tệp CSV để ghi và một đối tượng danh sách chứa tên trường.. Easiest way is to open a csv file in 'w' mode with the help of open() function and write key value pair in comma separated form. The csv module contains DictWriter method that requires name of csv file to write and a list object containing field names.

Chúng ta có thể viết từ điển vào một tệp trong Python không?

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ó.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.

Cách tốt nhất để lưu từ điển Python là gì?

Có hai cách tiếp cận chính để lưu từ điển vào các tệp bằng Python ...
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.....
Mô -đun Pickle (Khuyến nghị).

Làm thế nào để tôi xuất một từ điển?

Xuất khẩu từ điển..
Trong nhà thám hiểm, mở từ điển ..
Nhấp vào Nhập / Xuất> Xuất Excel.Tùy chọn Xuất toàn bộ từ điển được chọn theo mặc định ..
Nếu nhiều ngôn ngữ được thiết lập cho không gian làm việc, hãy chọn ngôn ngữ để xuất.....
Nhấp vào Xuất Excel ..