【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 操作执行的快慢. 当然他们也试图优化一些不常见的操作. 但是当权衡的时候,它们还 ...
随机推荐
- js 原生轮播图插件
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- AI能帮我们造出一个无肉的世界吗?
AI听起来很遥远,其实已经渗透到我们的日常工作和生活中.在不远的未来,互联网.大数据.硬件的发展和软件的优化,乃至全社会的参与,人工智能将真正从实验室走进生活,它将成为改变我们生活的一部分.我们吃的肉 ...
- python自动化工具
公司有些业务不断的重复复制和黏贴实在让人头疼,于是乎考虑使用python自动的生成文件,并且替换文件中的一些内容,把需要复制和黏贴的内容制作成 模版,以后的开发工作可以根据模版来自动生成文件,自己以后 ...
- Python程序运行流程与垃圾回收机制
Python程序运行流程 Python解释器首先将程序将py文件编译成一个字节码对象PyCodeObject(只存在于内存中).(当这个模块的 Python 代码执行完后,就会将编译结果保存到了pyc ...
- Google在百慕大避税几十亿美金,为什么巨头和富豪都会选百慕大避税?
为什么"越有钱越有钱"?为什么富豪只要不自己"作",就能让自己的财富疯狂增加?除了经营意识之外,关键他们还可以利用自己的资源.实力等去做很多看似让人不齿,但其实 ...
- django--ajax的使用,应用
Ajax简介 AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”.即使用Javascript语言与服务器进行异步交互,传输的数 ...
- 手工创建 efi,msr 分区 · Virgil Chan
昨天在帮同学装 win10 的时候,不小心(不知道那是什么东西)把原系统的 efi 和 msr 盘删了,用 WinNTsetup 安装时 EFI PART 总显示红叉,安装后也进不去系统,想想应该是找 ...
- IDEA系列(九)Intellij IDEA界面介绍 - 哲也的博客
原文出处:https://github.com/judasn/IntelliJ-IDEA-Tutorial 首次打开 重点说明: IntelliJ IDEA 是没有类似 Eclipse 的工作空间的概 ...
- Javascript中的局部变量、全局变量的详解与var、let的使用区别
前言 Javascript中的变量定义方式有以下三种方式:1.直接定义变量,var与let均不写: a = 10; 2.使用var关键字定义变量 var a = 10; 3.使用let关键字定义变量 ...
- async/await实现图片的串行、并行加载
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...