exercise012_类的读取

# -*- coding: utf-8 -*- 
# @Time : 13/8/18 下午5:54 
# @Author : debin.lin
# @File : exercise012.py 
# @Software: PyCharm
# @Mail : [email protected]

# 3:请将上次从txt里面读取url转换为字典的作业改写成一个类,专门从txt里面读取测试数据的类。
# 详见:exercise009.py

class read_urls():
    def __init__(self,filename='test_data.txt'):
        self.filename=filename
    def convert_url(self):
        with open(self.filename) as f:
            list = f.readlines()
        i = 1
        final_list = []  # 创建个空列表,放总列表
        for x in list:  # 先遍历读取文件后的元素
            dic = {}  # 创建个空字典,用于放test_data.txt转化后的字典
            for y in x.strip().split(',', 2):  # 用“,”拆分成只有“:”的元素
                list1 = y.split(':', 1)  # 再用“:”拆分,得到我们要的含key和value的列表
                dic[list1[0]] = list1[1]  # 加到字典中
            print('第' + str(i) + '行的字典是:\n')  # 输出第一个转化后的字典
            print(dic)
            i = i + 1
            final_list.append(dic)  # 将首个完整的字典先加到总列表中
        print('总列表:\n')
        print(final_list)

read_url=read_urls('test_data.txt')
read_url.convert_url()

# import re
#
# class Reading_data():
#     def __init__(self,flie_path):
#         self.flie_path = flie_path
#
#     def test_data(self):
#         test_data = []
#         user_data = {}
#         with open(path) as file_object:
#             for line in file_object:
#                 data = re.split(':|,|\n',line)
#                 user_data[data[0]] = data[1]+data[2]+data[3]
#                 user_data[data[4]] = data[5]
#                 user_data[data[6]] = data[7]
#                 test_data.append(user_data)
#         print(test_data)
#
# path = r'test_data.txt'
# test_path_one = Reading_data(path)
# test_path_one.test_data()
1行的字典是:

{'mobilephone': '13760246701', 'url': 'http://119.23.241.154:8080/futureloan/mvc/api/member/login', 'pwd': '123456'}
第2行的字典是:

{'mobilephone': '15678934551', 'url': 'http://119.23.241.154:8080/futureloan/mvc/api/member/login', 'pwd': '234555'}
总列表:

[{'mobilephone': '13760246701', 'url': 'http://119.23.241.154:8080/futureloan/mvc/api/member/login', 'pwd': '123456'}, {'mobilephone': '15678934551', 'url': 'http://119.23.241.154:8080/futureloan/mvc/api/member/login', 'pwd': '234555'}]

猜你喜欢

转载自blog.csdn.net/weixin_42652708/article/details/81666314