组成数据结构

1. 将数据组成列表嵌套列表的格式

class Info:
    # 公共列表存储
    lin_ = []
    def serve(self):
        self.s1()
        self.s2()
        self.s3()
    def s1(self):
        # 数据信息
        rule = {'安徽省': 5, '北京市': 4, '福建省': 3, '甘肃省': 2, '广东省': 1}
        for k,v in rule.items():
            for i in range(v):
                self.lin_.append([k,'16岁'])
    # 单选
    def s2(self):
        # 建立临时列表存储
        lin = []
        age = {'18-25周岁': 5, '26-35周岁': 4, '36-45周岁': 3, '46-55周岁': 2, '55-60周岁': 1}
        for k,v in age.items():
            for i in range(v):
                lin.append(k)
        for index,value in enumerate(lin):
            self.lin_[index].append(value)

    # 多选
    def s3(self):
        # 建立临时列表存储
        lin = []
        relu = {
            '非常严重': 5, '比较严重': 5, '一般': 2, '比较不严重': 2, '非常不严重': 2
        }
        for k,v in relu.items():
            for i in range(v):
                lin.append(k)

        for index,value in enumerate(lin):
            # 根据下标进行将数据添加至公共列表
            if index < 5:
                self.lin_[index].append(value)
            elif 5 <= index < 10:
                self.lin_[index-5].append(value)
        print(self.lin_)


if __name__ == '__main__':
    Info().serve()
View Code

2. 将数据组成字典嵌套字典的格式

class Info:
    # 公共列表存储
    lin_ = {}
    def serve(self):
        self.s1()
        self.s2()
        self.s3()
        self.s4()


    def s1(self):
        # 数据信息
        lin = []
        rule = {'安徽省': 5, '北京市': 4, '福建省': 3, '甘肃省': 2, '广东省': 1}
        for k,v in rule.items():
            for i in range(v):
                lin.append(k)
        for i in range(15):
            self.lin_[i] = {}
            self.lin_[i]['s1'] = lin[i]

    def s2(self):
        for index,value in enumerate(self.lin_):
            self.lin_[index]['s2'] = "16岁"

    # 单选
    def s3(self):
        # 建立临时列表存储
        lin = []
        age = {'18-25周岁': 5, '26-35周岁': 4, '36-45周岁': 3, '46-55周岁': 2, '55-60周岁': 1}
        for k,v in age.items():
            for i in range(v):
                lin.append(k)
        for index,value in enumerate(lin):
            self.lin_[index]['s3'] = value


    # 多选
    def s4(self):
        # 建立临时列表存储
        lin = []
        li = [[] for i in range(15)]
        relu = {
            '非常严重': 5, '比较严重': 8, '一般': 2, '比较不严重': 2, '非常不严重': 2
        }
        for k,v in relu.items():
            for i in range(v):
                lin.append(k)

        for index,value in enumerate(lin):
            if index < 15:
                li[index].append(value)
            elif 15 <= index < 30:
                li[index-15].append(value)
        for index,value in enumerate(li):
            self.lin_[index]['s4'] = value
        print(self.lin_)

if __name__ == '__main__':
    Info().serve()
View Code
原文地址:https://www.cnblogs.com/xinzaiyuan/p/14061019.html