python3.6zm将list存入txt后再读出list-创新互联

这篇文章给大家分享的是有关python3.6zm 将list存入txt后再读出list的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

10年积累的成都网站设计、成都网站制作、外贸网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有椒江免费网站建设让你可以放心的选择与我们合作。

今天遇到一个需求,就是将一个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': '\xe5\x8d\x8e\xe5\x8c\x97\xe5\x9c\xb0\xe5\x8c\xba(\xe5\x8c\x97\xe4\xba\xac)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-chengdu',
        'RegionName': '\xe8\xa5\xbf\xe5\x8d\x97\xe5\x9c\xb0\xe5\x8c\xba(\xe6\x88\x90\xe9\x83\xbd)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-chongqing',
        'RegionName': '\xe8\xa5\xbf\xe5\x8d\x97\xe5\x9c\xb0\xe5\x8c\xba(\xe9\x87\x8d\xe5\xba\x86)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-guangzhou',
        'RegionName': '\xe5\x8d\x8e\xe5\x8d\x97\xe5\x9c\xb0\xe5\x8c\xba(\xe5\xb9\xbf\xe5\xb7\x9e)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-guangzhou-open',
        'RegionName': '\xe5\x8d\x8e\xe5\x8d\x97\xe5\x9c\xb0\xe5\x8c\xba(\xe5\xb9\xbf\xe5\xb7\x9eOpen)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-hongkong',
        'RegionName': '\xe4\xb8\x9c\xe5\x8d\x97\xe4\xba\x9a\xe5\x9c\xb0\xe5\x8c\xba(\xe9\xa6\x99\xe6\xb8\xaf)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-mumbai',
        'RegionName': '\xe4\xba\x9a\xe5\xa4\xaa\xe5\x9c\xb0\xe5\x8c\xba(\xe5\xad\x9f\xe4\xb9\xb0)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-seoul',
        'RegionName': '\xe4\xb8\x9c\xe5\x8d\x97\xe4\xba\x9a\xe5\x9c\xb0\xe5\x8c\xba(\xe9\xa6\x96\xe5\xb0\x94)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-shanghai',
        'RegionName': '\xe5\x8d\x8e\xe4\xb8\x9c\xe5\x9c\xb0\xe5\x8c\xba(\xe4\xb8\x8a\xe6\xb5\xb7)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-shanghai-fsi',
        'RegionName': '\xe5\x8d\x8e\xe4\xb8\x9c\xe5\x9c\xb0\xe5\x8c\xba(\xe4\xb8\x8a\xe6\xb5\xb7\xe9\x87\x91\xe8\x9e\x8d)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-shenzhen-fsi',
        'RegionName': '\xe5\x8d\x8e\xe5\x8d\x97\xe5\x9c\xb0\xe5\x8c\xba(\xe6\xb7\xb1\xe5\x9c\xb3\xe9\x87\x91\xe8\x9e\x8d)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'ap-singapore',
        'RegionName': '\xe4\xb8\x9c\xe5\x8d\x97\xe4\xba\x9a\xe5\x9c\xb0\xe5\x8c\xba(\xe6\x96\xb0\xe5\x8a\xa0\xe5\x9d\xa1)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'eu-frankfurt',
        'RegionName': '\xe6\xac\xa7\xe6\xb4\xb2\xe5\x9c\xb0\xe5\x8c\xba(\xe5\xbe\xb7\xe5\x9b\xbd)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'na-ashburn',
        'RegionName': '\xe7\xbe\x8e\xe5\x9b\xbd\xe4\xb8\x9c\xe9\x83\xa8(\xe5\xbc\x97\xe5\x90\x89\xe5\xb0\xbc\xe4\xba\x9a)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'na-siliconvalley',
        'RegionName': '\xe7\xbe\x8e\xe5\x9b\xbd\xe8\xa5\xbf\xe9\x83\xa8(\xe7\xa1\x85\xe8\xb0\xb7)',
        'RegionState': 'AVAILABLE'},
        {'Region': 'na-toronto',
        'RegionName': '\xe5\x8c\x97\xe7\xbe\x8e\xe5\x9c\xb0\xe5\x8c\xba(\xe5\xa4\x9a\xe4\xbc\xa6\xe5\xa4\x9a)',
        '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_test\data_source_list.txt", "w",encoding='UTF-8')
a.write(c_list)
a.close()

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

输出如图:

python3.6zm 将list存入txt后再读出list

有关json模块的说明:

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

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

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

感谢各位的阅读!关于“python3.6zm 将list存入txt后再读出list”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站名称:python3.6zm将list存入txt后再读出list-创新互联
本文URL:http://myzitong.com/article/dgcced.html