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 ...
随机推荐
- CodeForces 280B Maximum Xor Se
题目链接:http://codeforces.com/contest/280/problem/B 题目大意: 给定一个由n个数组成的一个序列,s[l..r] (1 ≤ l < r ≤ n)代表原 ...
- VMware Workstation 10序列号:
VMware Workstation 10序列号:1Y0LW-4WJ9N-LZ5G9-Z81QP-92PN7
- MySQL中 in和exists的区别
A表: 100条数据 , B: 10条数据 select * from A where id in ( select aid from B ) 先执行括号里面的查询,然后执行外面,总共需要查询的次数的 ...
- kubernetes 将pod运行在某些特定的节点上,给节点打标签
给节点打上标签: kubectl label node <node_name> GPU=true #打上标签 GPU=true 在创建pod的yaml文件时: 添加 nodeSel ...
- 数据分析---《Python for Data Analysis》学习笔记【02】
<Python for Data Analysis>一书由Wes Mckinney所著,中文译名是<利用Python进行数据分析>.这里记录一下学习过程,其中有些方法和书中不同 ...
- 【XSY2921】yja 拉格朗日乘法
题目描述 在平面上找 \(n\) 个点,要求这 \(n\) 个点离原点的距离分别是 \(r_1,r_2,\ldots,r_n\),最大化这 \(n\) 个点构成的土包的面积.这些点的顺序任意. \(n ...
- python 高阶函数之 map
以例子来理解 用法1:如函数 f(x) = x * x,用python实现如下 >>> def f(x): ... return x * x >>> r = map ...
- TensorFlow深度学习,一篇文章就够了
http://blog.jobbole.com/105602/ 作者: 陈迪豪,就职小米科技,深度学习工程师,TensorFlow代码提交者. TensorFlow深度学习框架 Google不仅是大数 ...
- python之OpenCv(四)---人脸识别
对特定图像进行识别,最关键的是要有识别对象的特征文件.OpenCV已经内置了人脸识别特征文件,我们只要使用OpenCV的CascadeClassifier类即可进行识别. 语法: https://gi ...
- (二叉树 递归 DFS) leetcode 100. Same Tree
Given two binary trees, write a function to check if they are the same or not. Two binary trees are ...