python习题week3

1、从输入的字典中获取给定key的值,
实现函数:get_key_value(source_dict, key, index=0),source_dict指给定的字典,key指需要获取的key字段,index指的是需要获取相同key的第几个值,从0开始,默认是0 

"""
File: 01dict取值.py
Author: chde_wang
Date: 2020-07-29 22:48:33
Description:从输入的字典中获取给定key的值,实现函数:get_key_value(source_dict, key, index=0),source_dict指给定的字典,key指需要获取的key字段,index指的是需要获取相同key的第几个值,从0开始,默认是0。e.g: get_key_value(a, ‘id’, 2),返回值应该是:7554611
"""
a = {"code":200,"msg":"success","data":{"list":{"pay_column":[],"column":[{"id":6443650,"app_id":1561979372,"username":"qfhyadx","alias":"","title":"\u5de5\u5177","desc":"","img_url":"https:\/\/img-blog.csdnimg.cn\/20190927151132530.png","channel_id":0,"sum":16,"sort":6443650,"is_show":1,"status":1,"is_free":0,"is_delete":2,"status_count":"{\"1\":16}","created_at":"2019-08-26T04:19:51Z","updated_at":"2019-11-22T07:53:45Z","second":False,"edit_title":"\u5de5\u5177","column_subscribe_count":0,"column_url":"https:\/\/blog.csdn.net\/qfhyadx\/category_6443650.html","is_audit_pending":False},{"id":6459549,"app_id":1561979372,"username":"qfhyadx","alias":"","title":"\u968f\u7b14","desc":"","img_url":"https:\/\/img-blog.csdnimg.cn\/20190927151043371.png","channel_id":0,"sum":4,"sort":6459549,"is_show":1,"status":1,"is_free":0,"is_delete":2,"status_count":"{\"1\":4}","created_at":"2019-08-26T04:19:51Z","updated_at":"2020-07-19T21:49:55Z","second":False,"edit_title":"\u968f\u7b14","column_subscribe_count":0,"column_url":"https:\/\/blog.csdn.net\/qfhyadx\/category_6459549.html","is_audit_pending":False},{"id":7554611,"app_id":1561979372,"username":"qfhyadx","alias":"","title":"python3","desc":"","img_url":"https:\/\/img-blog.csdnimg.cn\/20190927151101105.png","channel_id":0,"sum":2,"sort":7554611,"is_show":1,"status":1,"is_free":0,"is_delete":2,"status_count":"{\"1\":2}","created_at":"2019-08-26T04:20:06Z","updated_at":"2020-07-13T19:41:03Z","second":False,"edit_title":"python3","column_subscribe_count":0,"column_url":"https:\/\/blog.csdn.net\/qfhyadx\/category_7554611.html","is_audit_pending":False}]},"total":3,"un_pass_total":0,"recycle_total":0}
}
# 递归调用def read_dict(input_dict, input_key, result_list):if input_dict:if isinstance(input_dict, dict):for key1, value1 in input_dict.items():if not isinstance(value1, (dict, list)):# 删减为空的时候if value1:if key1 == input_key:result_list.append(value1)else:read_dict(input_dict[key1], input_key, result_list)elif isinstance(input_dict, list):if input_dict:for i in range(len(input_dict)):if isinstance(input_dict[i], dict):for key2, value2 in input_dict[i].items():if not isinstance(value2, (dict, list)):# 删减为空的时候if value2:if key2 == input_key:result_list.append(value2)else:read_dict(input_dict[key2], input_key, result_list)else:print("您的输入不合法!")def get_key_value(source_dict, key, index=0):out_list = []read_dict(source_dict, key, out_list)if out_list and index >= 0:return out_list[index]else:return out_listinput_dict_value = "qw"
input_key_value = 'id'
num_value = 2
result = get_key_value(input_dict_value, input_key_value, num_value)
if result:print(result)

2 从文件中获取指定字符所在行数据。实现函数:check_string(file_path, key_word),file_path代表文件所在路径,key_word代码搜索的关键字,返回符合条件的列表

"""
File: 03file取list.py
Author: chde_wang
Date: 2020-08-01 14:39:59
Description:从文件中获取指定字符所在行数据。
"""def check_string(file_path, key_word):""":param file_path: 代表文件所在路径:param key_word: 代码搜索的关键字:return: 返回符合条件的列表"""result_list = []try:with open(file_path, 'r') as f:for line in f.readlines():line = line.strip('\n')if line.find(key_word) != -1:result_list.append(line)except FileNotFoundError:print("文件不存在或者文件打开错误!")return result_listfind_s = "complate"
result_lst = []
result_lst = check_string("test.txt", find_s)
if not result_lst:print("您查找结果为空")
else:print("您查找结果为:", result_lst)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/567696.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python硬件_「大神器!」硬件的AI性能测试Python库发布

目前人工智能技术发展速度很快,也很吸引眼球。但是对于各种多如牛毛的方法,目前并米有一个可靠的精准的基准来衡量各项硬件在不同算法训练和推理的性能。现在,不用愁了。国外的一个哥们, Andrey Ignatov发布了一个python库。大家可…

Python random模块seed理解

想要在同一个程序中产生同一组随机数,需要在下一个函数设置一个相同的随机种子 random.seed(0),其中的0是对应的随机数的种子,如果不设置这个值,则系统根据时间来自己选择这个值,此时每次生成的随机数因时间差异而不同 import …

python生成1到100的列表_python列表生成式与列表生成器的使用

列表生成式:会将所有的结果全部计算出来,把结果存放到内存中,如果列表中数据比较多,就会占用过多的内存空间,可能会导致MemoryError内存错误或者导致程序在运行时出现卡顿的情况 列表生成器:会创建一个列表…

python之异常处理

关于错误和异常 (1)概念:错误是无法通过其他代码进行处理问题,如语法错误和逻辑错误,语法错误是单词或格式等写错,只能根据系统提示去修改相应的代码,逻辑错误是代码实现功能的逻辑有问题&…

python图像质量评价_OpenCV图像质量评价的SSIM算法(图像相似度)

添加函数体。将SSIM函数添加至命名空间后。该函数主要功能是时哟功能ssim算法对两张图像进行比较,并将图像在各通道比较的结果以scalar形式返回。 Scalar getMSSIM(char * imagePatha,char * imagePathb) { Mat i1imread(imagePatha); Mat i2imread(imagePathb); co…

Python 装饰器理解

1、定义: (1)装饰器指的是为被装饰对象添加额外功能的工具/函数。 2、使用装饰器的意义(原因): 如果我们已经上线了一个项目,我们需要修改某一个方法,但是我们不想修改方法的使用…

什么是python标识符_Python:标识符Identifier

什么是标识符? 标识符 (ldentifier) :是一个用来标识变量、函数、类、模块或其他对象的名称。 标识符规范 1)标识符由字母、下划线和数字组成 2)不能以数字开头 3)区分大小写 4)不能使用关键字 命名规则 1、见名知意。…

Python 可变参数*args和**kwargs

多个实参,放到一个元组里面,以*开头,可以传多个参数;**是形参中按照关键字传值把多余的传值以字典的方式呈现 *args:表示的就是将实参中按照位置传值,多出来的值都给args,且以元组的方式呈现, …

springboot security 权限校验_十二、SpringBoot 优雅的集成Spring Security

前言至于什么是Spring security ,主要两个作用,用户认证和授权。即我们常说的,用户只有登录了才能进行其他操作,没有登录的话就重定向到登录界面。有的用户有权限执行某一操作,而有的用户不能执行则是授权。算是一个项…

python模块下载过程_常用的python模块及安装方法

bsddb3:BerkeleyDB的连接组件 Cheetah-1.0:我比较喜欢这个版本的cheetah cherrypy:一个WEB framework ctypes:用来调用动态链接库 DBUtils:数据库连接池 django:一个WEB framework docutils:用来…

python3 week4

1 实现四舍五入,禁止使用python内建函数。 func(soure_num, precise),source_num为需要处理的数据,precise为需要保留的位数 """ File: 01四舍五入.py Author: chde_wang Date: 2020-08-09 12:14:59 D…

python如何读取csv文件某几行某几列_关于python:读取.csv文件时,我似乎无法指定列dtypes...

本问题已经有最佳答案,请猛点这里访问。 一个菜鸟问题(修订):我读了一个.csv文件,并尝试按以下方式指定dtypes: 1 2 3 4 5 6 7 8 9 10 11 12 13 14import csv import pandas as pd cdc pd.read_csv(myFile.csv, dtype { Phenoty…

python-week5

1、现在有如下流程:A->B->C->D->E->F,要求根据输入的参数从制定的流程执行下去 """ File: 01流程执行.py Author: chde_wang Date: 2020-08-16 18:51:35 Description:将输入存储到列表中&#xf…

python-week6

1.如下示例, 请用面向对象的形式优化以下代码 def exc1(host,port,db,charset):connconnect(host,port,db,charset)conn.execute(sql)return xxxdef exc2(host,port,db,charset,proc_name)connconnect(host,port,db,charset)conn.call_proc(sql)return xxx # 每次调用都需要重复…

python定义空数组_在numpy数组中设置空值

如何根据条件使numpy数组中的某些值为空? 我不明白为什么我最终得到的是0,而不是不满足条件的null或空值。。。b是用0和1值填充的numpy数组,c是另一个完全填充的numpy数组。所有阵列均为71x71x166a np.empty(((71,71,166))) d np.empty(((7…

excel学习1-查看一列数值是否在另一列中存在

出现次数用COUNTIF 是否出现使用 IFCOUNTIF 加入$的作用是将需要比对的列固定范围。写好一个函数后,使用右下角号,直接下拉就可以。 参考自https://blog.csdn.net/gywtzh0889/article/details/72910377

fx5u以太网通讯设置_操作示例 | 实现S7300和FX5U的数据交换

北辰BCNet-S7300Plus(以下简称BCNet),在BCNet-S7300的基础上,以太网口增加了支持与西门子带网口PLC(S7-200SMART 、S7-1200、S7-1500、S7300PN)之间的通讯功能。这些通讯功能包括基于S7TCP协议的数据交换、ModbusTCP服务器功能、ModbusTCP客户机功能&…

excel基础-固定某一列的输入内容

Office:需要固定的单元格-点击数据-数据有效性-点击,选择有效性条件 允许为:序列,然后需要下拉框内容,并选择下拉框。即可 切记:开源中的逗号为英文逗号。 最后效果如下: 参考自https://jingya…

为什么多个线程不可能同时抢到一把锁_HFL Redis_12_redis分布式锁的3种实现方式...

HotFrameLearning(简称 HFL) Redis_12_redis分布式锁的3种实现方式-一、大致介绍1、昨天介绍完redis的数据结构后,有小伙伴让本人讲讲redis的分布式锁,因此才有了此篇的由来,只是把我的节奏提前了而已;2、接下来我就通过几种方式介…

linux下mysql5.7修改密码

开始修改MySQL用户密码 ① 输入use mysql回车; ② 输入update user set password password(“147258”)where user’root’; “147258”为你自己设置的密码; 执行第二步后如果报错: 执行后报错  ERROR 1…