Python之路,Day11 = Python基础11

内置函数
divmod(x, y)             # (商, 模)
enumerate(可迭代对象)          # (序号,值)
eval(字符串)            # 把字符串当成命令执行
set({1,2,3})              # 可变集合(增删改)
frozenset({1,2,3})              # 不可变集合
globals()               # 查看全局变量
locals()               # 查看局部变量
isinstance(3, int)             # 查看3是不是int类型
pow(3,3)                 # 3**3
pow(3,3,2)             # 3**3 % 2
reversed()              # 翻转
round(3.3456, 3)          # 保留3位小数后四舍五入

x = slice(2,5,2)         # 获得一个切片对象
l[x]
上面两句等同于: l[2:5:2], 但上面定义的 x 可以提供给好多个列表使用

zip():拉链函数
  s = 'hello'
  l = [1,2,3,4,5,6]
  zip(s,l)
  一 一对应,多的就不要了

map:映射,每个元素执行lambda表达式结果
l=[1,2,3,4]
m = map(lambda x:x**2, l)
生成一个迭代器,循环后结果
print(list(m))
>>[1,4,9,16]

reduce:合并
from functools import reduce
reduce(合并规则(func),可迭代对象range(100),初始值)

filter
filter(lambda, 列表) # 打印返回结果为True的值

sorted:排序,没有改变原来的顺序
sorted(list)
sorted(list, reverse=True)

匿名函数
  func2 = lambda x:x**2 # 默认return
  print( func2(2) )

等同于:
def func(x):
  return x**2
print( func1(2) )

递归

1.直接或间接调用自己

2.有停止的条件

3.规模应该每次变小

=========================================================

1 文件内容如下,标题为:姓名,性别,年纪,薪资

egon male 18 3000
alex male 38 30000
wupeiqi female 28 20000
yuanhao female 28 10000 要求:
从文件中取出每一条记录放入列表中,
列表的每个元素都是{'name':'egon','sex':'male','age':18,'salary':3000}的形式 2 根据1得到的列表,取出薪资最高的人的信息
3 根据1到的列表,取出最年轻的人的信息
4 根据1得到的列表,将每个人的信息中的名字映射成首字母大写的形式
5 根据1得到的列表,过滤掉名字以a开头的人的信息
 info_list = [{'name':i.split()[0],'sex':i.split()[1], 'age':i.split()[2], 'salary':i.split()[3]} for i in open('info',encoding='utf-8')]

 print(max(info_list,key=lambda x:x['salary']))     # 最大值
print(min(info_list,key=lambda x:x['age'])) # 最小值 def func1(x):
x['name'] = x['name'].capitalize()
return x # print(list(map(lambda x:x['name'].capitalize(), info_list)))
print(list(map(func1, info_list))) # 首字母大写,目测有点问题,等会儿解决下 print(list(filter(lambda x:not x['name'].startswith('a'), info_list)))
# 6 使用递归打印j(前两个数的和得到第三个数)
# 0 1 1 2 3 5 8...
def nbqe(a=0, b=1):
if a < 50000:
print(a, end=' ')
c = a + b
nbqe(b, c) nbqe() # =====================================
l = [0, ]
def fbnq(a=0, b=1):
l[0] = a
return b,a+b a = 0
b = 1
total = 100000
for i in range(total):
a, b = fbnq(a, b) print('第%s个值为:%s'%(total, l[-1]))===
												

day23 内置函数,匿名函数,递归的更多相关文章

  1. python学习日记(内置、匿名函数练习题)

    用map来处理字符串列表 用map来处理字符串列表,把列表中所有水果都变成juice,比方apple_juice fruits=['apple','orange','mango','watermelo ...

  2. python笔记4 内置函数,匿名函数.递归函数 面向对象(基础, 组合,继承)

    内置函数 eval和exec eval :执行字符串中的代码并将结果返回给执行者,有返回值 exec:执行字符串中的代码,往往用于执行流程语句,没有返回值. s1 = '1+2' s2 = 'prin ...

  3. python基础学习Day14 内置函数 匿名函数

    一.内置函数里几个高频重要函数 (1)min\max函数的用法 以min函数的为例: min:返回可迭代对象的最小值(可加key,key为函数名,通过函数的规则,返回最小值). l1 =[(,),(, ...

  4. Python中匿名函数与内置高阶函数详解

    大家好,从今天起早起Python将持续更新由小甜同学从 初学者的角度 学习Python的笔记,其特点就是全文大多由 新手易理解 的 代码与注释及动态演示 .刚入门的读者千万不要错过! 很多人学习pyt ...

  5. python(内置高阶函数)

    1.高阶函数介绍: 一个函数可以作为参数传给另外一个函数,或者一个函数的返回值为另外一个函数(若返回值为该函数本身,则为递归),如果满足其一,则为高阶函数. 常见的高阶函数:map().sorted( ...

  6. JMeter 内置日期(时间)函数总结

    JMeter 内置日期(时间)函数总结   by:授客 QQ:1033553122 1. 测试环境 apache-jmeter-3.3 下载地址: http://jmeter.apache.org/c ...

  7. Hive 文件格式 & Hive操作(外部表、内部表、区、桶、视图、索引、join用法、内置操作符与函数、复合类型、用户自定义函数UDF、查询优化和权限控制)

    本博文的主要内容如下: Hive文件存储格式 Hive 操作之表操作:创建外.内部表 Hive操作之表操作:表查询 Hive操作之表操作:数据加载 Hive操作之表操作:插入单表.插入多表 Hive语 ...

  8. python 练习题:请利用Python内置的hex()函数把一个整数转换成十六进制表示的字符串

    # -*- coding: utf-8 -*- # 请利用Python内置的hex()函数把一个整数转换成十六进制表示的字符串 n1 = 255 n2 = 1000 print(hex(n1)) pr ...

  9. classmethod、staticclassmethod内置装饰器函数

    # method 英文是方法的意思 # classmethod 类方法 # 当一个类中的方法中只涉及操作类的静态属性时,此时在逻辑上,我们想要直接通过类名就可以调用这个方法去修改类的静态属性,此时可以 ...

  10. property内置装饰器函数和@name.setter、@name.deleter

    # property # 内置装饰器函数 只在面向对象中使用 # 装饰后效果:将类的方法伪装成属性 # 被property装饰后的方法,不能带除了self外的任何参数 from math import ...

随机推荐

  1. Mybatis_环境搭建

    1.配置pom文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="h ...

  2. 机器学习改善Interpretability的几个技术

    改善机器学习可解释性的技术和方法 尽管透明性和道德问题对于现场的数据科学家来说可能是抽象的,但实际上,可以做一些实际的事情来提高算法的可解释性 算法概括 首先是提高概括性.这听起来很简单,但并非那么简 ...

  3. 机器学习Explainability vs Interpretability

    The difference between machine learning explainability and interpretability In the context of machin ...

  4. ES6 简化对象写法

    简化的对象写法 * 省略同名的属性值 * 省略方法的function <!DOCTYPE html> <html lang="en"> <head&g ...

  5. css制作旋转风车(transform 篇)

    做这个案例之前首先要大概了解CSS的transform的属性 transform 属性向元素应用 2D 或 3D 转换.该属性允许我们对元素进行旋转.缩放.移动或倾斜. 看看效果图 打开的时候自动旋转 ...

  6. 单调栈(最大子矩形强化版)——牛客多校第八场A

    求01矩阵里有多少个不同的1矩阵 首先预处理出pre[i][j]表示i上面连续的1个数,对每行的高度进行单调栈处理 栈里的元素维护两个值:pre[i][j]和向前延伸最多能维护的位置pos 然后算贡献 ...

  7. NX二次开发-UFUN输出UF函数使用错误UF_get_fail_message

    #include <uf.h> #include <uf_ui.h> #include <uf_modl.h> UF_initialize(); UF_FEATUR ...

  8. WebStorm+Node.js开发环境的配置

    1 下载地址:  webstorm:http://www.jetbrains.com/webstorm node.js:https://nodejs.org/download/ 2 安装node.js ...

  9. jvm监控命令-jstat

    jstat 用于查看服务器上某个服务的GC情况. 一般使用方式jstat –gcpid或jstat –utilpid 时间间隔-每个一定时间(指定的时间间隔)输出一次进程pid的内存情况及gc情况. ...

  10. PAT_A1090#Highest Price in Supply Chain

    Source: PAT A1090 Highest Price in Supply Chain (25 分) Description: A supply chain is a network of r ...