为了账号安全,请及时绑定邮箱和手机立即绑定

Python-写入txt文件作为我的字典列表

Python-写入txt文件作为我的字典列表

哔哔one 2023-06-27 17:22:52
假设我有这样存储的字典数据集列表:data = [ {'Name': 'Sneaker shoes', 'Date & Time': '2019-12-03 18:21:26', 'Information': ['Sizes from 38 to 44', 'Comes in 5 different colour', 'Rated 4.3 out of 5 stars']},  {'Name': 'Worker boots', 'Date & Time': '2018-11-05 10:12:15', 'Information': ['Sizes from 38 to 44', 'Comes in 2 different colour', 'Rated 3.7 out of 5 stars']}, {'Name': 'Slippers', 'Date & Time': '2018-10-05 13:15:44', 'Information': ['Sizes from 38 to 42', 'Comes in 3 different colour', 'Rated 4.1 out of 5 stars']}]我一直试图将数据写入txt文件,但我不知道如何将其编码出来。这就是我所做的shoes_database = open("shoes_db.txt", 'w')for value in data:    shoes_database.write('\n'.join([value.get('Name'), str(value.get('Date & Time')), str(value.get('Information')), '\n']))shoes_database.close()因为“名称”和“日期和时间”中的值已正确存储到文件中。但是,对于“信息”,我无法将每个鞋子信息存储到新行中,并且没有方括号和“”,因为它是一个列表。这是我想在 Shoes_db.txt 文件中写入和存储的内容Sneaker shoes2019-12-03 18:21:26Sizes from 38 to 44Comes in 5 different colourRated 4.3 out of 5 starsWorker boots2018-11-05 10:12:15Sizes from 38 to 44Comes in 2 different colourRated 3.7 out of 5 starsSlippers2018-10-05 13:15:44Sizes from 38 to 42Comes in 3 different colourRated 4.1 out of 5 stars希望我的 python 代码能得到一些答案。我仍在从中学习,因为它是我项目的一部分。我也被限制只能使用python标准库,所以我不能使用任何第三方库。
查看完整描述

2 回答

?
慕斯王

TA贡献1864条经验 获得超2个赞

下面(“信息”下的数据是一个列表,您需要迭代列表条目)


data = [

    {'Name': 'Sneaker shoes', 'Date & Time': '2019-12-03 18:21:26',

     'Information': ['Sizes from 38 to 44', 'Comes in 5 different colour', 'Rated 4.3 out of 5 stars']},

    {'Name': 'Worker boots', 'Date & Time': '2018-11-05 10:12:15',

     'Information': ['Sizes from 38 to 44', 'Comes in 2 different colour', 'Rated 3.7 out of 5 stars']},

    {'Name': 'Slippers', 'Date & Time': '2018-10-05 13:15:44',

     'Information': ['Sizes from 38 to 42', 'Comes in 3 different colour', 'Rated 4.1 out of 5 stars']}

]

with open("shoes_db.txt", 'w') as f:

    for idx, entry in enumerate(data):

        f.write(entry['Name'] + '\n')

        f.write(entry['Date & Time'] + '\n')

        for info in entry['Information']:

            f.write(info + '\n')

        if idx != len(data) - 1:

            f.write('\n')


查看完整回答
反对 回复 2023-06-27
?
缥缈止盈

TA贡献2041条经验 获得超4个赞

with open("shoes_db.txt", 'w') as f:

    for entry in data:

        f.write(entry['Name'] + '\n')

        f.write(entry['Date & Time'] + '\n')


查看完整回答
反对 回复 2023-06-27
  • 2 回答
  • 0 关注
  • 143 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信