函数小练习

第一题

现有文件info.txt, 其内容如下:

alpha male 18 1000

bravo male 28 2000

charlie female 38 3000

delta female 48 4000

  1. 从文件中取出每一条记录放入列表中,列表的每个元素都是{'name':'alpha','gender':'male','age':18,'salary':1000}的形式

  2. 根据1得到的列表,取出薪资最高的人的信息

  3. 根据1得到的列表,取出最年轻的人的信息

  4. 根据1得到的列表,将每个人的信息中的名字映射成首字母大写的形式

  5. 根据1得到的列表,过滤掉名字以a开头的人的信息

# 1
info_list = []
with open('info.txt', 'rt', encoding='utf-8') as f:
for line in f:
info_split_list = (line.strip().split(' '))
name, gender, age, salary = info_split_list
info_dict = {'name': name, 'gender': gender, 'age': age, 'salary': salary}
info_list.append(info_dict) print(info_list) # 2
max_salary_info = max(info_list, key=lambda dic: dic['salary'])
print(max_salary_info) # 3
min_age_info = min(info_list, key=lambda dic: dic['age'])
print(min_age_info) # 4
new_info_list = map(lambda dic: {'name': dic['name'].capitalize(),
'gender': dic['gender'],
'age': dic['age'],
'salary': dic['salary']}, info_list)
print(list(new_info_list)) # 5
res = filter(lambda dic: dic['name'][0] != 'a', info_list)
print(list(res))

第二题

使用递归打印斐波那契数列(前两个数的和得到第三个数,如:0 1 1 2 3 4 7...)

num1 = 0
num2 = 1
num = 0 def fibo(end):
'''斐波那契数列'''
global num1, num2, num
print(num)
num1 = num2
num2 = num
num = num1 + num2
if num > end:
return
func(end) func(20)

第三题

一个嵌套很多层的列表,如l=[1,2,[3,[4,5,6,[7,8,[9,10,[11,12,13,[14,15]]]]]]],用递归取出所有的值

def get(lis):
for i in lis:
if type(i) == list:
get(i)
else:
print(i) get(l)

Python3 函数小练习的更多相关文章

  1. python3函数

    一.python3函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.可以自己创建函数,这被叫做用户自定义函数. 1.定义函数规则 函 ...

  2. python015 Python3 函数

    Python3 函数函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可 ...

  3. 07 . Python3函数

    Python3函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.Python提供了许多内建函数,比如print().我们可以直接调用 ...

  4. JavaScript apply函数小案例

    //回调函数1 function callback(a,b,c) { alert(a+b+c); } //回调函数2 function callback2(a,b) { alert(a+b); } / ...

  5. js 回调函数小例子

    js 回调函数小例子 <script> //将函数作为另一个函数的参数 function test1(){ alert("我是test1"); } function t ...

  6. python3 购物车小程序,余额写入文件保存

    python3 购物车小程序,余额写入文件保存 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuhung Wan goods = ( ...

  7. Python3函数中特殊形参的使用:*、*args、**kwargs

    Python3函数中特殊形参的使用:*.*args.**kwargs ==用法1:不定长参数== 当函数需要的参数数量不确定的时候,可以使用*args 和 **kwargs , 所有的位置参数保存在* ...

  8. python系列十:python3函数

    #!/usr/bin/python #-*-coding:gbk-*- '''函数的简单规则:    函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ().    任何传入参数和自变量必 ...

  9. Python3 函数 一

    什么是函数? 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的,编程中的函数在英文中也有很多不同的叫法.在BASIC中叫做subroutine(子过程或子程序),在Pascal ...

随机推荐

  1. 构建 DNS 主从复制服务器

    一.主节点配置 1.yum install bind -y 安装 DNS 服务 2.vim /etc/named.conf 编辑 DNS 的配置文件 3.named-checkconf 检查配置文件 ...

  2. 自动安装 linux 系统

    实现自动安装 centos 6 和 centos 7 实现自动安装 Linux 系统需要在虚拟机上安装三个服务:apache .tftp.dhcp 三个服务放在一台虚拟机上即可 一.DHCP 服务器的 ...

  3. scrapy_redis分布式爬虫

    文章来源:https://github.com/rmax/scrapy-redis Scrapy-Redis Documentation: https://scrapy-redis.readthedo ...

  4. 使用ASP.NET Core 3.x 构建 RESTful API - 3.2 路由和HTTP方法

    ASP.NET Core 3.x 的路由 路由机制会把一个请求的URI映射到一个Controller上面的Action,所以当你发送一个HTTP请求的时候,MVC框架会解析这个请求的URI,并尝试着把 ...

  5. 十、GAP

    1.1     背景 GAP(Generic Access Profile)位于主机协议栈的最顶层,用来定义BLE设备在待机或者连接状态中的行为,该Profile保证不同的Bluetooth产品可以互 ...

  6. window系统下删除多余的引导

    window系统下删除多余的引导 1.首先第一步进入EFI分区删除多余系统引导,只留下需要的引导 如何进入EFI分区 a)win 搜索框输入cm, 右键以管理员运行命令行 b)输入命令 diskpar ...

  7. php中 continue break exit return 的区别

    php 中的循环有 for foreache while do{} whlie这几种. 1.continue continue是用来在循环结构中,控制程序放弃本次循环continue: 之后的语句,并 ...

  8. 在WebView中加载HTML页面时显示进度对话框的方法

    webView.setWebViewClient(new WebViewClient(){            ProgressDialog prDialog;            @Overri ...

  9. 【集合系列】- 深入浅出的分析 Hashtable

    一.摘要 在集合系列的第一章,咱们了解到,Map 的实现类有 HashMap.LinkedHashMap.TreeMap.IdentityHashMap.WeakHashMap.Hashtable.P ...

  10. NTP服务搭建详解一条龙

    说在前面:ntp和ntpdate区别 ①两个服务都是centos自带的(centos7中不自带ntp).ntp的安装包名是ntp,ntpdate的安装包是ntpdate.他们并非由一个安装包提供. ② ...