【python 数据结构】相同某个字段值的所有数据(整理成数组包字典的形式)

class MonitoredKeywordMore(APIView):
def post(self, request):
try:
# 设置原生命令并且请求数据
parents_asin = str(request.data.get("parentsasin"))
hour=str(request.data.get("hour"))
# 执行原生mysql命令查询
raw_monitored_more = MonitoredMore(hour, parents_asin)
obj_rawqueryset = models.MonitoredGoods.objects.raw(raw_monitored_more)
# 对请求数据进行序列化
json_data = {}
dict = {}
for obj in obj_rawqueryset:
if not dict.get(obj.single_keyWord): # 如果字典没有这个 关键词(key)
dict[obj.single_keyWord] = [] # 就以这个关键词 为key 创建一个空的数组(用于添加以这个关键词为key的rank信息) {'shoes': []}
# 创建一个字典添加这个关键词对应的所有排行
item = {}
item["heat"] = obj.heat
item["ranking"] = obj.ranking
item["position"] = obj.position
# 把这个关键词对对应的所有需要数据 做成一个字典放在组数里面
dict[obj.single_keyWord].append(item)
else:
item = {}
item["heat"] = obj.heat
item["ranking"] = obj.ranking
item["position"] = obj.position
dict.get(obj.single_keyWord).append(item)
json_data['code'] =
return Response(dict)
except Exception as e:
dict_error={}
msg = traceback.format_exc()
print(msg)
logging_main.keyword_error.error(msg)
dict_error['message'] = "请求异常"
dict_error['code'] =
return JsonResponse(dict_error)
前端页面的展示:
// 请求数据
expandGoodsContent(resent, this.parentsasin).then(response => {
if (response.code === ) { this.keyWorkRanking = []
response.data.some((item, i) => {
// 循环遍历数组 <开始>
for (var key in item) { // console.log("this.keyWorkRanking", this.keyWorkRanking)
//
// console.log("键:", key);
// console.log("值:", item[key][item[key].length-1]);
//
// console.log("最后一个值:", item[key]);
// console.log("最后一个值的位置:",item[key][item[key].length-1].position.split(",")[1]); this.keyWorkRanking.push({ keyword: key,
heat: item[key][item[key].length-].heat,
rank: item[key][item[key].length-].ranking + "," + "第" + item[key][item[key].length-].position.split(",")[] + "页第" + item[key][item[key].length-].position.split(",")[] + "位",
})
}
// 循环遍历数组 <结束>
console.log("this.keyWorkRanking",this.keyWorkRanking)
}) }
} 控制台展示:
图在下面

【python 数据结构】相同某个字段值的所有数据(整理成数组包字典的形式)的更多相关文章
- SQL查询一个表里面某个字段值相同的数据记录
好长时间没有用SQL了...还停留在学生时代的水平... 转: 昨天遇到个面试题:查询一个表里面某个字段值相同的数据记录,好久没有写过这种,还真的花了点时间才写出来.如表g_carddetail,有 ...
- Mysql查询某字段值重复的数据
查询user表中,user_name字段值重复的数据及重复次数 select user_name,count(*) as count from user group by user_name havi ...
- python获取响应某个字段值的三种方法
近期将要对两个接口进行测试,第一个接口的响应值是第二个接口的查询条件.为了一劳永逸,打算写个自动化测试框架.因为请求和响应都是xml格式的,遇到的问题就是怎么获取xml响应的某一个值.尝试了很多博客的 ...
- MySQL 查询表中某字段值重复的数据
MySQL中,查询表(dat_bill_2018_11)中字段(product_id)值重复的记录: ; 说明:先用GROUP BY 对 product_id 进行分组,同时使用COUNT(*)进行统 ...
- C# 获得枚举值中所有数据到Array(数组)中
Array LogType = Enum.GetValues(LogTypes.登录.GetType()); public enum LogTypes { 登录, 添加, 修改, 删除, 导出, 异常 ...
- [ArcGIS API for JavaScript 4.8] Sample Code-Popups-1-popupTemplate的概念和popup中属性字段值的多种表现形式
[官方文档:https://developers.arcgis.com/javascript/latest/sample-code/intro-popuptemplate/index.html] 一. ...
- Python xlrd模块读取Excel表中的数据
1.xlrd库的安装 直接使用pip工具进行安装(当然也可以使用pycharmIDE进行安装,这里就不详述了) pip install xlrd 2.xlrd模块的一些常用命令 ①打开excel文件并 ...
- python数据结构与算法——链表
具体的数据结构可以参考下面的这两篇博客: python 数据结构之单链表的实现: http://www.cnblogs.com/yupeng/p/3413763.html python 数据结构之双向 ...
- Python数据结构与算法--List和Dictionaries
Lists 当实现 list 的数据结构的时候Python 的设计者有很多的选择. 每一个选择都有可能影响着 list 操作执行的快慢. 当然他们也试图优化一些不常见的操作. 但是当权衡的时候,它们还 ...
随机推荐
- 吴裕雄--天生自然KITTEN编程:逃离漩涡
- C语言程序设计100例之(31):全排列问题
例31 全排列问题 题目描述 输出自然数1到n所有不重复的排列,即n的全排列,要求所产生的任一数字序列中不允许出现重复的数字. 输入格式 n(1≤n≤9) 输出格式 由1-n组成的所有不重复的数字 ...
- Spring Boot 2.x基础教程:使用 ECharts 绘制各种华丽的数据图表
上一节我们介绍了如何在Spring Boot中使用模板引擎Thymeleaf开发Web应用的基础.接下来,我们介绍一下后端开发经常会遇到的一个场景:可视化图表. 通常,这类需求在客户端应用中不太会用到 ...
- 前后端分离下的跨域CAS请求
最重要的两点: ajax请求跨域的时候,默认不会携带cookie. 请求分为普通请求(HttpRequest)和Ajax请求(XMLHttpRequest) 先屡一下跨域CAS认证的流程: 前端发起a ...
- mongoose-面向对象操作mongodb的Nodejs框架
介绍 无论是mysql还是mongodb,传统的与数据库交互的方式都是按照他们提供的API来写代码.它们提供的API往往不是很容易理解,而且难以记忆,如果传错了参数,写错一个符号都要查文档. ORM( ...
- JZOJ 1492. 烤饼干
1492. 烤饼干 (Standard IO) Description NOIP烤饼干时两面都要烤,而且一次可以烤R(1<=R<=10)行C(1<=C<=10000)列个饼干, ...
- form表单提交没有跨域问题,但ajax提交存在跨域问题
浏览器的策略本质是:一个域名下面的JS,没有经过允许是不能读取另外一个域名的内容,但是浏览器不阻止你向另外一个域名发送请求. 所以form表单提交没有跨域问题,提交form表单到另外一个域名,原来页面 ...
- 【colab pytorch】使用tensorboardcolab可视化
import torch import torch.nn as nn import torch.nn.functional as F import torch.optim as optim from ...
- 由世界坐标系转换到摄像机坐标系的lookAt()函数
在学习图形学和opengl的时候,都涉及到坐标转化,从物体坐标转换为世界的坐标,从世界的坐标转换为摄像机的坐标. 在世界坐标到摄像机转换的过程中常用lookAt函数得到转化矩阵.GLM官方文档对它的解 ...
- docker 编译开发代码做镜像
文件目录 Dockerfile 是docker制作镜像的文件,docker_run.sh是sh文件,gin_test是go编译之后的linux可执行程序,gintest.env是配置文件夹 首先写一个 ...