python数据类型小测试
# 1. 有两个列表,其中一个列表a,每一项映射到另一个列表b每一项,先对a排序,要求b的中映射关系位置保持不变,给b也按照排序, (b的8对应a的[1,2], 7对应[3,4] ... )
a = [[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]]
b = [8, 7, 9, 7, 9]
def relation(a,b):
relation = {}
for index, item in enumerate(a):
relation[tuple(item)] = b[index]
new_a = [list(i) for i in sorted(relation, key=lambda x: relation[x])]
new_b = sorted(b)
return new_a, new_b
a,b = relation(a,b)
print(a)
print(b)
"""
2. 将一维列表根据父节点,折叠起来
menu_list = [
{'id':1,'title':'菜单1','pid':None},
{'id':2,'title':'菜单2','pid':None},
{'id':3,'title':'菜单3','pid':None},
{'id':4,'title':'菜单1.1','pid':1},
{'id':5,'title':'菜单1.2','pid':1},
{'id':6,'title':'菜单2.1','pid':2},
{'id':7,'title':'菜单3.1','pid':3},
{'id':8,'title':'菜单1.1.1','pid':4},
{'id':9,'title':'菜单1.2.1','pid':5},
{'id':10,'title':'菜单4','pid':None},
]
结果:
result = [
{'id':1,'title':'菜单1','pid':None,children:[
{'id':4,'title':'菜单1.1','pid':1,children:[
{'id':8,'title':'菜单1.1.1','pid':4,children:[]},
]},
{'id':5,'title':'菜单1.2','pid':1,children:[
{'id':9,'title':'菜单1.2.1','pid':5},
]},
]},
{'id':2,'title':'菜单2','pid':None..},
{'id':3,'title':'菜单3','pid':None..},
{'id':10,'title':'菜单4','pid':None..},
]
"""
# 方法一
new_dic = {}
for i in menu_list:
new_dic[i['id']] = i
for v in new_dic.values():
pid = v['pid']
if pid:
new_dic[pid].setdefault('childern', [])
new_dic[pid]['childern'].append(v)
result = [i for i in menu_list if not i['pid']]
# 方法二
temp_list = menu_list.copy()
for i in menu_list:
i['children'] = []
pid = i['pid']
if i['pid']:
temp_list[pid-1]['children'].append(i)
result = [i for i in temp_list if not i['pid']]
python数据类型小测试的更多相关文章
- python 程序小测试
python 程序小测试 对之前写的程序做简单的小测试 ... # -*- encoding:utf-8 -*- ''' 对所写程序做简单的测试 @author: bpf ''' def GameOv ...
- Python之小测试:用正则表达式写一个小爬虫用于保存贴吧里的所有图片
很简单的两步: 1.获取网页源代码 2.利用正则表达式提取出图片地址 3.下载 #!/usr/bin/python #coding=utf8 import re # 正则表达式 import urll ...
- python 数据库小测试
1.整理博客 2.详细解释下列mysql执行语句的每个参数与参数值的含义 mysql -hlocalhost -P3306 -uroot -proot # mysql (连接数据库) # hloc ...
- python 实现九型人格测试小程序
用python实现九型人格测试,并把测试结果绘制成饼图,实现代码如下: # @Description: 九型人格 import xlrd, matplotlib.pyplot as plt data ...
- Python 数据类型及其用法
本文总结一下Python中用到的各种数据类型,以及如何使用可以使得我们的代码变得简洁. 基本结构 我们首先要看的是几乎任何语言都具有的数据类型,包括字符串.整型.浮点型以及布尔类型.这些基本数据类型组 ...
- Python基础-python数据类型(四)
python数据类型 在python中,变量就是变量,它没有类型,我们所说的类型是变量所指的内存中对象的类型. python中的数据类型: 1.数字 python中没有专门定义常量的方式,通常使用大写 ...
- #6 Python数据类型及运算
前言 前文讲述了Python的输入输出以及变量的相关知识点,本节将探讨Python的数据类型以及数据之间的运算方式! 一.Python数据类型 上一节弄清了变量,其实变量所指向的值是有自己独特的数据类 ...
- 【转】Python数据类型之“序列概述与基本序列类型(Basic Sequences)”
[转]Python数据类型之“序列概述与基本序列类型(Basic Sequences)” 序列是指有序的队列,重点在"有序". 一.Python中序列的分类 Python中的序列主 ...
- PYTHON 100days学习笔记007-2:python数据类型补充(2)
目录 day007:python数据类型补充(2) 1.Python3 元组 1.1 访问元组 1.2 删除元组 1.3 元组运算符 1.4 元组索引,截取 1.5 元组内置函数 2.python3 ...
随机推荐
- kettle基于时间戳增量更新
思路1: 1.提前建好ts时间表,设置两个字段分别为current_t和load_t,current用于比较原表中日期的上限,load_t则为上次加载的日期,几位原表中日期的下限. create ta ...
- Python——Django-form表单提交
一.提交的注意事项 1. form不是from,所有获取用户输入的标签都应该放在form里面, input并且必须要有name属性 2. action属性控制往哪儿提交,method一般都设置成pos ...
- python doc格式转文本格式
首先python是不能直接读写doc格式的文件的,这是python先天的缺陷.但是可以利用python-docx (0.8.6)库可以读取.docx文件或.txt文件,且一路畅通无阻. 这样的话,可以 ...
- sql中的 IF 条件语句的用法
IF 表达式 IF( expr1 , expr2 , expr3 ) expr1 的值为 TRUE,则返回值为 expr2 expr1 的值为FALSE,则返回值为 expr3 如下: SELECT ...
- 从零开始学习微信小程序
1.微信公众号和小程序的区别 公众号可以基于html5.vue.react.anguar开发,小程序只能用小程序开发语言. 小程序更接近于原生app. 借助jssdk调用手机功能强大. 开始: 2.创 ...
- Python爬虫之一
1. 爬虫的选取:scrapy和requests+beautifuisoup scrapy是框架,而requests和beautifulsoup是库.scrapy框架是可以加如requests和bea ...
- utf8的大小写敏感性测试及其修改方法
utf8的大小写敏感性测试及其修改方法 # 测试utf8的大小写敏感性及其修改方法 -- 以下是utf8不区分大小写 # 修改数据库: ALTER DATABASE database_name CHA ...
- RocketMQ_问题_启动控制台console报错,connect to <null> failed
配置如图所示: 问题如图所示: 明明配置了nameserver参数为啥还是connect to null呢? 我的rocketmq部署在CentOS7虚拟机上,原来是没关闭防火墙,执行:systemc ...
- Kubernetes之ServiceAccount
ServiceAccount 是什么 Service Account为Pod中的进程和外部用户提供身份信息.所有的kubernetes集群中账户分为两类,Kubernetes管理的serviceacc ...
- ACM-ICPC 2018 徐州赛区网络预赛 F Features Track(STL模拟)
https://nanti.jisuanke.com/t/31458 题意 有N个帧,每帧有K个动作特征,每个特征用一个向量表示(x,y).两个特征相同当且仅当他们在不同的帧中出现且向量的两个分量分别 ...