当前位置: 首页 > news >正文

怎么将网站关键词排名首页宁波手机网站开发公司

怎么将网站关键词排名首页,宁波手机网站开发公司,做网站挣外快,个人做搜索引擎网站违法吗目录 背景 思路 新建两个函数A和B#xff0c;函数 A处理字典数据#xff0c;被调用后#xff0c;判断传递的参数#xff0c;如果参数为字典#xff0c;则调用自身#xff1b; 如果是列表或者元组#xff0c;则调用列表处理函数B#xff1b; 函数 B处理列表#x…目录 背景 思路 新建两个函数A和B函数 A处理字典数据被调用后判断传递的参数如果参数为字典则调用自身 如果是列表或者元组则调用列表处理函数B 函数 B处理列表被调用后判断传递的参数如果参数为列表或者元组则调用自身 如果是字典则调用字典处理函数A 参考代码 效果图 调试过程中遇到的坑 资料获取方法 背景 在做接口自动化的过程中接口返回的数据是  列表字典循环嵌套  格式的所以怎样通过一个key值获取到被包裹了多层的目标数据成为了摆在我面前的一个问题。 一开始没想自己写但是搜索后发现虽然很多人遇到类似的问题但是相应的解决方案都不能达到我想要的结果所以自己尝试写了一个。 思路 最初的做法是写一个函数每次对传入的数据进行类型判断然后根据数据类型做对应的处理后来发现如果这样实际有多少层数据就要做多少次判断。 那么有没有一劳永逸的方法呢答案当然是有 调试过程中发现函数的调用特别符合递归的规律但是和一般递归的略有不同需要两个函数相互调用递归。实测可以完美解决这个问题 具体思路如下 新建两个函数A和B函数 A处理字典数据被调用后判断传递的参数如果参数为字典则调用自身 如果是列表或者元组则调用列表处理函数B 函数 B处理列表被调用后判断传递的参数如果参数为列表或者元组则调用自身 如果是字典则调用字典处理函数A 参考代码 注释已经写得比较清晰就不多解释了 #! /usr/bin/python # coding:utf-8 author:Bingo.he file: get_target_value.py time: 2017/12/22 def get_target_value(key, dic, tmp_list)::param key: 目标key值:param dic: JSON数据:param tmp_list: 用于存储获取的数据:return: listif not isinstance(dic, dict) or not isinstance(tmp_list, list): # 对传入数据进行格式校验return argv[1] not an dict or argv[-1] not an list if key in dic.keys():tmp_list.append(dic[key]) # 传入数据存在则存入tmp_listfor value in dic.values(): # 传入数据不符合则对其value值进行遍历if isinstance(value, dict):get_target_value(key, value, tmp_list) # 传入数据的value值是字典则直接调用自身elif isinstance(value, (list, tuple)):_get_value(key, value, tmp_list) # 传入数据的value值是列表或者元组则调用_get_valuereturn tmp_listdef _get_value(key, val, tmp_list):for val_ in val:if isinstance(val_, dict): get_target_value(key, val_, tmp_list) # 传入数据的value值是字典则调用get_target_valueelif isinstance(val_, (list, tuple)):_get_value(key, val_, tmp_list) # 传入数据的value值是列表或者元组则调用自身 效果图 下图对对这个方法做了测试能从很复杂的多重嵌套数据中正常获取到想要的值测试数据 test_dic {a: 1, b: 2, c: {d: [{e: [{f: [{v: [{g: 6}, [{g: 7}, [{g: 8}]]]}, m]}]}, h, {g: [10, 12]}]}} 调试过程中遇到的坑 初始时博主将存储获取数据的临时list放到了函数的参数里这样调用时候就可以少传一个参数但是后来发现单次调用的时候不存在问题但是多次调用的时候会同时返回上一次调用的值 这可能是python函数本身的一个bug def get_target(a, b[]):b.append(a)print(b)get_target(1) get_target(2) 后来查了很多资料了解到参数默认值只会在函数声明时初始化一次之后不会再初始化 下面这段代码定义和调用也是存在细微差别的 def foo(*args, **kargs):passfoo(*args, **kargs) 资料获取方法 【留言777】 各位想获取源码等教程资料的朋友请点赞 评论 收藏三连 三连之后我会在评论区挨个私信发给你们~
http://www.zqtcl.cn/news/65291/

相关文章:

  • 厦门网站建设格给医院做网站赚钱吗
  • 网站的seo相关指标湖南有实力seo优化
  • 制作门户网站如何用wordpress搭建企业网站
  • 如何修复网站中的死链wordpress 用户验证
  • 方案计划网站专业网站建设费用
  • 为什么有的网站点不开如何做网站国际化
  • 网站临时域名如何搭建一个属于自己的网站
  • 一键做网站的软件金龙网站哪里建设的
  • 自己做淘宝客是不是需要建网站高端的程序开发
  • 临漳企业做网站推广广州科技网络公司排名
  • 网站建设注册小程序长春网站建设模板制作
  • 网站建设公司常州沥林网站建设马甲比较好
  • 做游戏小网站是啥工作满多少年不能辞退
  • 苏州网站建设完整移动端有哪些
  • 文山 砚山 网站建设宜兴城乡建设局网站
  • 网站建社石家庄建设部网站政策法规
  • 南宁网站建设优化排名网站建设中 意思
  • 阿里云免费网站爱山东app二维码
  • 英文站 wordpress太原便宜做网站的公司哪家好
  • 记事本做网站如何添加图片网站自适应案例
  • 建立网站费用较低镇江市住房与城乡建设部网站
  • 网站建设员的薪水做外商备案的网站
  • 做市级网站需要什么意思自己做民宿在什么网站上投放
  • 郑州市做网站的公司wordpress引用文章
  • 高校资源网网站建设方案网页制作素材中国文化
  • 为什么自己做的网站别的电脑打不开WordPress国内开发主题
  • php开发网站流程网站开发常用开发语言
  • 做网站上加入模块怎么加入中公it培训机构怎么样
  • 正黄集团博弘建设官方网站做公众号文章的网站
  • 中国建设银行网站的主要功能网站指定关键词优化