内置函数,递归函数

divmod函数

divmod(7,3)
(2, 1)
>>> a,b=divmod(7,3)
>>> a
2
>>> b
1
>>> help(divmod)

divmod返回一个tuple ,(x//y,x%y)

enumerate(iterable)

返回的事一个迭代器,包含他的值和索引

for i in enumerate(l):
print(i)

(0, ‘a‘)
(1, ‘b‘)
(2, ‘c‘)

for i in enumerate(dic):
    print(i)

(0, ‘name‘)
(1, ‘age‘)

frozenset()创建一个被冰冻的集合,不可删除,不可添加

s=frozenset((1,2,3,4))
>>> s.pop()
Traceback (most recent call last):
  File "<pyshell#23>", line 1, in <module>
    s.pop()
AttributeError: ‘frozenset‘ object has no attribute ‘pop‘
>>> s.add(1)
Traceback (most recent call last):
  File "<pyshell#24>", line 1, in <module>
    s.add(1)
AttributeError: ‘frozenset‘ object has no attribute ‘add‘

globals()  locals()  返回字典形式的,当前范围内的全局变量/局部变量

def fun():
    x=1
    print(locals())

>>> fun()
{‘x‘: 1}
>>> def fun():
    x=1
    print(globals())

>>> fun()
{‘__name__‘: ‘__main__‘, ‘__doc__‘: None, ‘__package__‘: None, ‘__loader__‘: <class ‘_frozen_importlib.BuiltinImporter‘>, ‘__spec__‘: None, ‘__annotations__‘: {}, ‘__builtins__‘: <module ‘builtins‘ (built-in)>, ‘a‘: 2, ‘b‘: 1, ‘l‘: [‘a‘, ‘b‘, ‘c‘], ‘i‘: (1, ‘age‘), ‘dic‘: {‘name‘: ‘egon‘, ‘age‘: 18}, ‘s‘: frozenset({1, 2, 3, 4}), ‘fun‘: <function fun at 0x0000000003600950>}

isinstance() 判断类型

type(s)
<class ‘frozenset‘>
>>> isinstance(s,frozenset)
True

zip()  返回一个元组,参数为两个可迭代的对象。

l1=[1,2,3,4]
>>> l2=[‘a‘,‘b‘,‘c‘,‘d‘]
>>> l=zip(l1,l2)
>>> type(l)
<class ‘zip‘>
>>> for i in l:
    print(i)

(1, ‘a‘)
(2, ‘b‘)
(3, ‘c‘)
(4, ‘d‘)

max() min()   返回最大值,最小值,参数可以是一个可迭代对象或者多个普通参数

匿名函数:

格式:lambda 参数,参数: 函数表达式

应用于一些很简单的函数,自带return 效果

map() ,映射函数

map()函数接收两个参数,一个是函数,一个是Iterablemap将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。

比如将一个列表的每个元素都平方得到一个新的序列,可以用map方法

 def f(x):
    return x*x

>>> list(map(f,l))
[1, 4, 9, 16, 25]

reduce()函数

from functools import reduce

使用reduce,必须要导入from functools import reduce     reduce把一个函数作用在一个序列[x1, x2, x3, ...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,其效果就是:

reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)

from functools import reduce
r=reduce(lambda x,y:x*y,[1,2,3,4,5])
print(r)

from functools import reduce
# r=reduce(lambda x,y:x*y,[1,2,3,4,5])
# print(r)

def char2num(s):
    return {‘0‘: 0, ‘1‘: 1, ‘2‘: 2, ‘3‘: 3, ‘4‘: 4, ‘5‘: 5, ‘6‘: 6, ‘7‘: 7, ‘8‘: 8, ‘9‘: 9}[s]

r=map(char2num,‘13567‘)
# for i in r:
#     print(i)
r=list(r)
print(r)
n=reduce(lambda x,y:x*10+y,r)
print(n)

filter函数和map类似,filter()也接收一个函数和一个序列。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。

r=filter(lambda x:x%2 == 1,[1,2,34,5,7])
r=list(r)
print(r)



时间: 2024-10-24 01:43:29

内置函数,递归函数的相关文章

Day10:内置函数、匿名函数、递归函数

一.内置函数 1.数学运算类 2.集合类操作 内置函数个别使用示例 1.any 集合中的元素有一个为真的时候为真, 特别的,若为空串返回为False 1 print(any([0,''])) 2 print(any([0,'',1])) 执行结果 1 False 2 True 2.divmod 取商得余数,用于做分页显示功能 1 print(divmod(10,3)) #取商得余数,用于做分页显示 执行结果 1 (3, 1) 3.eval  把字符串中的数据结构给提取出来 1 dic={'nam

day05 协程函数,递归函数,匿名函数lambda,内置函数map reduce filter max min zip sorted,匿名函数lambda和内置函数结合使用,面向过程编程与函数编程,模块与包的使用,re模块内置函数

基础篇 本章大纲: 协程函数 递归函数 匿名函数lambda 内置函数map reduce filter  max min zip sorted 匿名函数lambda和内置函数结合使用 面向过程编程与函数编程 模块与包的使用 re模块内置函数 一,协程函数 注意:函数先定义,后使用.这是函数第一原则.函数主要分为定义,调用 1.1,什么是协程函数 协程函数特点:yield变为表达式,可以通过g.send(value)传值,用send传值时协程函数需要初始化,也可以说是生成器函数的一种 1.2,协

Python基础----内置函数补充、匿名函数、递归函数

内置函数补充 python divmod()函数:把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b) 语法: 1 divmod(a, b) #a.b为数字,a为除数,b为被除数 示例: 1 >>> divmod(7, 2) 2 (3, 1) #3为商,1为余数 3 >>> divmod(7, 2.5) 4 (2.0, 2.0) 应用:web前端页数计算 1 total_count=73 2 per_count=23 3 res=div

14、内置函数、递归函数、匿名函数

一.内置函数 # print(abs(-1))# print(all([1,2,3]))# print(all([0,2,3])) # print(all('')) # print(any([0,None,'',1]))# print(any([0,None,'']))# print(any([])) # print(bin(3))# print(hex(17))# print(oct(9)) #0 None 空===>bool值为False,其余都为True # def func():# pa

高阶函数、递归函数、内置函数

这里我们学习的是: 高阶函数 递归函数 内置函数 参数分类: # 这里的参考文章是:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431752945034eb82ac80a3e64b9bb4929b16eeed1eb9000'''函数的参数的分类:必选参数默认参数可变参数关键字参数命名关键字参数 调用的顺序就是,必选参数-默认参数-可变参数-命名关键字参数-关键字参数

8.5高阶函数、递归函数和内置函数

高阶函数.递归函数和内置函数 高阶函数和递归函数 #函数名可以进行赋值,可以作为函数参数,可以作为返回值 #高阶函数:允许导入函数作为参数导入或者返回值为函数 def f(n): return n*n def fun(a,b,fun1): an1=fun1(a)+fun1(b) return (an1) print(fun(1,2,f)) def sqrt(n): return n*n def function(a,b,function1): answer=function1(a)+functi

高阶函数_递归函数_内置函数

最近挺喜欢纯音乐的,比如暴力一点的star sky.victory.go time.the mass...今天发现了一首特好安静的纯音乐,叫做桜(ying)道.清风推门开,疑是故人来,又是一年秋分至,门扉如旧,我该以什么理由想起你呢,以星月,以静默……对了,今天秋分. #Author:"haijing"#date:2018/9/23#上节回顾# s2=set('alvin')# print(s2) #打印 {'i', 'l', 'n', 'a', 'v'}# s2.add('op')

14 python初学(高阶函数 递归函数 内置函数)

高阶函数:1.  函数名是一个变量,函数名可以进行赋值 2. 函数名可以作为函数参数,还可以作为函数返回值(函数名称作为函数返回值时返回的是:函数的地址:print 这个返回值的调用相当于执行这个函数. 函数调用作为函数返回值相当于返回这个函数的执行结果) def f(n): return n*n def foo(a, b, func): return func(a)+func(b) print(foo(1, 2, f)) # >>> 5 递归函数: 调用自身函数 设置结束条件 每次进入

15 .内置函数(二),递归函数,二分法

14. 前 方 高能-内置函数 二 本节主要内容: lamda匿匿名函数 sorted() filter() map() 递归函数 一. lamda匿匿名函数为了了解决 一些简单的需求 而设计的 一句句话函数 # 计算n的n次 方 def func(n): return n**n print(func(10)) f = lambda n: n**n print(f(10)) lambda表 示的是匿匿名函数. 不需要 用def来声明,  一句句话就可以声明出 一个函数 语法: 函数名 = lam

day3-函数,递归,内置函数

day3-函数,递归,内置函数 作者:矮哥 归档:学习笔记 2017/01/28 1.函数是什么? 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的,具体区别,我们后面会讲,编程中的函数在英文中也有很多不同的叫法.在BASIC中叫做subroutine(子过程或子程序),在Pascal中叫做procedure(过程)和function,在C中只有function,在Java里面叫做method. 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个