【python基础语法】第7天作业练习题
import keyword
'''
# 第一题:简单题
1、什么是全局变量?
2、什么是局部变量?
3、函数内部如何修改全局变量(如何声明全局变量 )?
4、写出已经学过的所有python关键字,分别写出用途?
# 第二题:数据转换
现在有以下数据, li1 = ["{'a':11,'b':2}", "[11,22,33,44]"]
需要转换为以下格式: li1 = [{'a': 11, 'b': 2}, [11, 22, 33, 44]]
请封装一个函数,按上述要求实现数据的格式转换
# 第三题:数据转换
# 有一组用例数据如下:
cases = [
['case_id', 'case_title', 'url', 'data', 'excepted'],
[1, '用例1', 'www.baudi.com', '001', 'ok'],
[4, '用例4', 'www.baudi.com', '002', 'ok'],
[2, '用例2', 'www.baudi.com', '002', 'ok'],
[3, '用例3', 'www.baudi.com', '002', 'ok'],
[5, '用例5', 'www.baudi.com', '002', 'ok'],
] # 需要转换为以下格式
res1 = [
{'case_id': 1, 'case_title': '用例1', 'url': 'www.baudi.com', 'data': '001', 'excepted': 'ok'},
{'case_id': 4, 'case_title': '用例4', 'url': 'www.baudi.com', 'data': '002', 'excepted': 'ok'},
{'case_id': 2, 'case_title': '用例2', 'url': 'www.baudi.com', 'data': '002', 'excepted': 'ok'},
{'case_id': 3, 'case_title': '用例3', 'url': 'www.baudi.com', 'data': '002', 'excepted': 'ok'},
{'case_id': 5, 'case_title': '用例5', 'url': 'www.baudi.com', 'data': '002', 'excepted': 'ok'}
]
# 要求:封装一个函数,完成上述数据转换的功能,并且将case_id大于3的用例数据过滤出来,得到如下结果
res = [
{'case_id': 4, 'case_title': '用例4', 'url': 'www.baudi.com', 'data': '002', 'excepted': 'ok'},
{'case_id': 5, 'case_title': '用例5', 'url': 'www.baudi.com', 'data': '002', 'excepted': 'ok'}
'''
'''
# 第一题:简单题
1、什么是全局变量?
直接定义在文件中的变量,叫做全局变量,在该文件任何地方都能够访问
2、什么是局部变量?
定义在函数内部的变量叫做局部变量
3、函数内部如何修改全局变量(如何声明全局变量 )?
声明全局变量:
global关键字:将函数内部的局部变量转换为全局变量
修改全局变量:
使用nonlocal可以在嵌套函数内部修改外部函数的局部变量的值
"""
"""
# 第二题:数据转换
现在有以下数据, li1 = ["{'a':11,'b':2}", "[11,22,33,44]"]
需要转换为以下格式: li1 = [{'a': 11, 'b': 2}, [11, 22, 33, 44]]
请封装一个函数,按上述要求实现数据的格式转换
'''
# 第二题
data = ["{'a':11,'b':2}", "[11,22,33,44]"]
def work2():
new_data = []
for i in data:
res = eval(i)
new_data.append(res)
return new_data
li1 = work2()
print(li1) # 第三题
cases = [
['case_id', 'case_title', 'url', 'data', 'excepted'],
[1, '用例1', 'www.baudi.com', '', 'ok'],
[4, '用例4', 'www.baudi.com', '', 'ok'],
[2, '用例2', 'www.baudi.com', '', 'ok'],
[3, '用例3', 'www.baudi.com', '', 'ok'],
[5, '用例5', 'www.baudi.com', '', 'ok'],
] def work3(cases):
# 创建一个新列表
new_cases = []
# 获取新数据的key
title = cases[0]
# 遍历所有的数据
for data in cases[1:]:
# 将遍历的数据和key进行聚合打包,并转换为字典
c = dict(zip(title,data))
print(c)
# 判断转换后的数据,放到信列表中
if c["case_id"] > 3:
new_cases.append(c)
# 返回所有转换之后的结果
return new_cases
res = work3(cases)
print(res) # 方式二:
def work3(cases):
# 创建一个新列表
new_cases = []
# 获取新数据的key
title = cases[0]
# 遍历所有的数据
for data in cases[1:]:
# 将遍历的数据和key进行聚合打包,并转换为字典
c = dict(zip(title,data))
# 将转换后的数据,放到新列表中
new_cases.append(c)
# 使用fitter过滤器结果
# lambda后面跟函数的匿名参数x说明需要一个参数
# 冒号后面是匿名函数的返回值,返回参数
# new_cases,是需要传递的数据,字典参数
def func(x):
return x["case_id"] > 3
result = filter(func,new_cases)
# result = filter(lambda x:x["case_id"]>3,new_cases)
return result
【python基础语法】第7天作业练习题的更多相关文章
- python基础语法、数据结构、字符编码、文件处理 练习题
考试范围 '''1.python入门:编程语言相关概念2.python基础语法:变量.运算符.流程控制3.数据结构:数字.字符串.列表.元组.字典.集合4.字符编码5.文件处理''' 考试内容 1.简 ...
- python之最强王者(2)——python基础语法
背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...
- Python 基础语法(三)
Python 基础语法(三) --------------------------------------------接 Python 基础语法(二)------------------------- ...
- Python 基础语法(四)
Python 基础语法(四) --------------------------------------------接 Python 基础语法(三)------------------------- ...
- Python 基础语法(二)
Python 基础语法(二) --------------------------------------------接 Python 基础语法(一) ------------------------ ...
- Python 基础语法
Python 基础语法 Python语言与Perl,C和Java等语言有许多相似之处.但是,也存在一些差异. 第一个Python程序 E:\Python>python Python 3.3.5 ...
- 吾八哥学Python(四):了解Python基础语法(下)
咱们接着上篇的语法学习,继续了解学习Python基础语法. 数据类型大体上把Python中的数据类型分为如下几类:Number(数字),String(字符串).List(列表).Dictionary( ...
- python学习第五讲,python基础语法之函数语法,与Import导入模块.
目录 python学习第五讲,python基础语法之函数语法,与Import导入模块. 一丶函数简介 1.函数语法定义 2.函数的调用 3.函数的文档注释 4.函数的参数 5.函数的形参跟实参 6.函 ...
- python学习第四讲,python基础语法之判断语句,循环语句
目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...
- Python基础语法(三)
Python基础语法(三) 1. 数值型数据结构 1.1 要点 在之前的博客也有提到,数值型数据结构在这里就不过多介绍了.在这里提及一些需要知道的知识点. int.float.complex.bool ...
随机推荐
- Linux环境下的network IO
同步IO和异步IO,阻塞IO和非阻塞IO分别是什么,到底有什么区别?不同的人在不同的上下文下给出的答案是不同的.所以先限定一下本文的上下文. 本文讨论的背景是Linux环境下的network IO. ...
- hadoop_2.6.5集群安装
安装hadoop2.6.5集群: 1.规划设计: JacK6:NameNode,jobtracker JacK7:secondnode,datenode,tasktracker JacK8:datan ...
- Windows PHP 开启opcache的方法
PHP opcache可以提升性能.Windows PHP 配置 opcache 的方法如下: 1.先检查PHP目录下ext目录中有没有php_opcache.dll,没有的话自己下载(PHP 5.5 ...
- ios---CoreLocation框架实现定位功能
CoreLocation框架实现定位功能(iOS8.0之后) // // ViewController.m // 定位 // // Created by admin on 2017/9/20. // ...
- Java:谈谈控制线程的几种办法
目录 Java:谈谈控制线程的几种办法 join() sleep() 守护线程 主要方法 需要注意 优先级 弃用三兄弟 stop() resume suspend 中断三兄弟 interrupt() ...
- Windows 7中的“帮助和支持”无法打开怎么办?
win7 X64 将下面的代码导入注册表 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.xml] @="xmlfile&q ...
- 关于puremvc的几点思考
软件框架 框架要解决的问题是什么?这个问题感觉不能一概而论,就目前我遇到的项目实际来说主要是要解决以下几个问题 复用 并行开发 跨平台 项目背景:视频监控领域下,C/S & B/S模式的PC客 ...
- Java 继承_Chris
题目: 编写一个应用程序,创建一个矩形类,类中具有长.宽两个成员变量和求周长的方法.再创建一个矩形类的子类——正方形类,类中定义求面积方法.重写求周长的方法.在主类中,输入一个正方形边长,创建正方形对 ...
- tensorflow feed_dict()
import tensorflow as tf a=tf.Variable(100) b=tf.Variable(200) c=tf.Variable(300) update1=tf.assign(c ...
- 【译文连载】 理解Istio服务网格(第一章 概述)
书籍英文版下载链接为 https://developers.redhat.com/books/introducing-istio-service-mesh-microservices/,作者 Burr ...