栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python3.6 如何将list存入txt后再读出list的方法

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python3.6 如何将list存入txt后再读出list的方法

今天遇到一个需求,就是将一个list文件读取后,存入一个txt配置文件。存入时,发现list文件无法直接存入,必须转为str模式。

但在读取txt时,就无法恢复成list类型来读取了(准确地说,即使强行使用list读取,读出来的也是单个的字符)。

查了查资料,发现json.loads和json.dumps这对兄弟提供了一个很好的办法。下面看代码

#python 3.6
#!/usr/bin/env python
# -*- coding:utf-8 -*-
__author__ = 'BH8ANK'
'''取出字典中的value中的字典的value
'''

import json


x = {'RegionSet': [{'Region': 'ap-beijing',
 'RegionName': 'xe5x8dx8exe5x8cx97xe5x9cxb0xe5x8cxba(xe5x8cx97xe4xbaxac)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-chengdu',
 'RegionName': 'xe8xa5xbfxe5x8dx97xe5x9cxb0xe5x8cxba(xe6x88x90xe9x83xbd)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-chongqing',
 'RegionName': 'xe8xa5xbfxe5x8dx97xe5x9cxb0xe5x8cxba(xe9x87x8dxe5xbax86)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-guangzhou',
 'RegionName': 'xe5x8dx8exe5x8dx97xe5x9cxb0xe5x8cxba(xe5xb9xbfxe5xb7x9e)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-guangzhou-open',
 'RegionName': 'xe5x8dx8exe5x8dx97xe5x9cxb0xe5x8cxba(xe5xb9xbfxe5xb7x9eOpen)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-hongkong',
 'RegionName': 'xe4xb8x9cxe5x8dx97xe4xbax9axe5x9cxb0xe5x8cxba(xe9xa6x99xe6xb8xaf)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-mumbai',
 'RegionName': 'xe4xbax9axe5xa4xaaxe5x9cxb0xe5x8cxba(xe5xadx9fxe4xb9xb0)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-seoul',
 'RegionName': 'xe4xb8x9cxe5x8dx97xe4xbax9axe5x9cxb0xe5x8cxba(xe9xa6x96xe5xb0x94)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-shanghai',
 'RegionName': 'xe5x8dx8exe4xb8x9cxe5x9cxb0xe5x8cxba(xe4xb8x8axe6xb5xb7)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-shanghai-fsi',
 'RegionName': 'xe5x8dx8exe4xb8x9cxe5x9cxb0xe5x8cxba(xe4xb8x8axe6xb5xb7xe9x87x91xe8x9ex8d)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-shenzhen-fsi',
 'RegionName': 'xe5x8dx8exe5x8dx97xe5x9cxb0xe5x8cxba(xe6xb7xb1xe5x9cxb3xe9x87x91xe8x9ex8d)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'ap-singapore',
 'RegionName': 'xe4xb8x9cxe5x8dx97xe4xbax9axe5x9cxb0xe5x8cxba(xe6x96xb0xe5x8axa0xe5x9dxa1)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'eu-frankfurt',
 'RegionName': 'xe6xacxa7xe6xb4xb2xe5x9cxb0xe5x8cxba(xe5xbexb7xe5x9bxbd)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'na-ashburn',
 'RegionName': 'xe7xbex8exe5x9bxbdxe4xb8x9cxe9x83xa8(xe5xbcx97xe5x90x89xe5xb0xbcxe4xbax9a)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'na-siliconvalley',
 'RegionName': 'xe7xbex8exe5x9bxbdxe8xa5xbfxe9x83xa8(xe7xa1x85xe8xb0xb7)',
 'RegionState': 'AVAILABLE'},
 {'Region': 'na-toronto',
 'RegionName': 'xe5x8cx97xe7xbex8exe5x9cxb0xe5x8cxba(xe5xa4x9axe4xbcxa6xe5xa4x9a)',
 'RegionState': 'AVAILABLE'}],
 'RequestId': 'CDFBE924-36FE-30AE-1B46-5AFCDF8A943D',
 'TotalCount': 16}

y_list = x['RegionSet']
# print(y)#y是一个list,其中每个元素包含地域信息,每个元素又是单独的一个dict
# print(y_list)
i = 0
c_list = []
for i in range(len(y_list)):

  b_dict = y_list[i]
  c_list.append(b_dict['Region'])
  # print(a['Region'])
# print(b_dict)
print('============clist=============')
print(c_list)

'''
  json.dumps()和json.loads()是json格式处理函数(可以这么理解,json是字符串)
  (1)json.dumps()函数是将一个Python数据类型列表进行json格式的编码(可以这么理解,json.dumps()函数是将字典转化为字符串)
  (2)json.loads()函数是将json格式数据转换为字典(可以这么理解,json.loads()函数是将字符串转化为字典)
'''
c_list = json.dumps(c_list)
'''将c_list存入文件
'''
a = open(r"D:python_testdata_source_list.txt", "w",encoding='UTF-8')
a.write(c_list)
a.close()

'''读取data_source_list文件
'''
b = open(r"D:python_testdata_source_list.txt", "r",encoding='UTF-8')
out = b.read()
out = json.loads(out)
print(out)
print(isinstance(out,list))

输出如图:

有关json模块的说明:

json.dumps()和json.loads()是json格式处理函数(可以这么理解,json是字符串)

(1)json.dumps()函数是将一个Python数据类型列表进行json格式的编码(可以这么理解,json.dumps()函数是将字典转化为字符串)

(2)json.loads()函数是将json格式数据转换为字典(可以这么理解,json.loads()函数是将字符串转化为字典)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/25640.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号