返回顶部
首页 > 资讯 > 后端开发 > Python >python 函数(二)
  • 564
分享到

python 函数(二)

函数python 2023-01-30 23:01:16 564人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

一、高阶函数 1、函数名可以赋值 2、函数名可以作为函数参数 3、函数名可以作为函数的返回值 eg: def f1(n): return n*n def f2(a, b, f): return f(a) + f(b)

一、高阶函数

 1、函数名可以赋值
2、函数名可以作为函数参数
3、函数名可以作为函数的返回值
eg:
def f1(n):
    return n*n

def f2(a, b, f):
    return f(a) + f(b)   # 此处f() 相当于 f1()

num = f2(1, 2, f1)
print(num)

>>> 5

二、递归函数

 1.自己调用自己;
 2.有一个结束条件;

eg1: 递归求5!

def fat(n):
    if n == 1:
        return 1
    return n*fat(n-1)

print(fat(5))

>>> 120

eg2: 递归求斐波那契数列(输入位数,输出该位置所对应的值)

斐波那契数列:  0  1  1  2  3  5  8  13  21  34  55(从0、1开始,后面的任意一个数为她前面两个数的和)
def fibo(n):
    if n <= 1:
        return 1
    return fibo(n-1) + fibo(n-2)


print(fibo(8))     # 输出斐波那契数列的第8个数(是从0开始计数的)

>>> 21

三、内置函数

1.all() 函数

all()  # 如果括号里面的内容为真,返回True,否则返回False

2.eval() 函数 

eval()     # 相当于一个计算器,在括号里面直接输入要计算的内容

3.filter() 函数,   相当于过滤器,不符合条件的过滤掉,返回的值是过滤后的内容

eg:
st = ['a', 'b', 'c', 'd']

def fun(a):
    if a != 'a':   # 筛选条件
        return a

ret = filter(fun, st)
print(list(ret))

>>> ['b', 'c', 'd']

4.map()   字符串处理

st = ['c', 'd']

def fun(a):
    return a + "xss"  # 给列表中的每个元素后面加上‘xss’ 然后输出

ret = map(fun, st)

print(ret) # map  object的迭代器, 输出的是存放该函数的地址
print(list(ret))

>>>   <map object at 0x000001E7903B40B8>
          ['cxss', 'dxss']

5.reduce()函数    叠加器

from functools import reduce    # 使用reduce() 要加上该调用语句

def add(x, y):
    return x + y

print(reduce(add, range(1, 10)))   # 输出1-9相加的和
# 执行机制:取出range中的前两个数1和2分别赋值给x和y,执行adda()函数后把结果放入range中(此时range中数变为3 3 4 5 6 7 8 9),以此类推

6.lambda()   匿名函数

from functools import reduce      # 使用reduce() 的调用语句
print(reduce(lambda x, y: x*y, range(1, 7)))       # 计算6!
# 执行机制:取出range中的前两个数1和2分别赋值给x和y,然后相乘,结果放入range中(此时range中数变为2 3 4 5 6),以此类推

四、关键字 global 和 nonlocal (不多解释,直接上例子)

eg1:

count = 10

def f():
   global count  # 声明count是一个全局变量
    print(count)
    # 如果前面不用global声明,函数报错->UnboundLocalError: local variable 'count' referenced before assignment
    # 原因:count变量在定义之前调用,既全局变量不能在局部被修改
    count = 5
    print(count)

f()

>>> 10

        5

eg2:

def outer():
    count = 10

    def inner():
        nonlocal count  # 局部变量用nonlocal关键字 声明
         count = 20
        print(count)
    inner()
    print(count)

outer()

>>> 20

        20

--结束END--

本文标题: python 函数(二)

本文链接: https://lsjlt.com/news/181054.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python 函数(二)
    一、高阶函数 1、函数名可以赋值 2、函数名可以作为函数参数 3、函数名可以作为函数的返回值 eg: def f1(n): return n*n def f2(a, b, f): return f(a) + f(b) ...
    99+
    2023-01-30
    函数 python
  • python函数(二)
    #6.传递任意个数的参数;#在定义函数时,若参数名前面使用“”,则表示可接受任意个数的参数,这些参数保存在一个元祖中。#定义函数,代表b是一个元祖,可以接受多个参数def add(a,*b):s=a#用循环迭代元祖b中的对象。for x ...
    99+
    2023-01-31
    函数 python
  • python—函数实例二
    一、递归 几种常用内置函数方法:1)os.listdir():列出第一层目录文件In [14]: os.listdir("/root/python") Out[14]: ['20.py', '1.py', '19.py', '21.py']...
    99+
    2023-01-31
    函数 实例 python
  • Python函数二(函数名,闭包,迭代器
    函数名的使用: 函数名可以作为值,赋值给变量。 函数名可以作为参数传参给函数。 函数名可以作为返回值。 函数名可以作为元素存储在容器里。 闭包:在嵌套函数内,使用外层局部变量(非全局变量)就是一个闭包,闭包可以多层嵌套。闭包的优点: ...
    99+
    2023-01-30
    函数 迭代 Python
  • 函数(二)
    函数的嵌套 定义 函数内部定义的函数,无法在函数外部使用内部定义的函数 def f1(): def f2(): print('from f2') f2() f2() def f1(): def f2...
    99+
    2023-01-31
    函数
  • 5.2Python函数(二)
    目录 目录 前言 (一)偏函数 ==1.说明== ==2.原代码== ==3.显示效果== ...
    99+
    2023-01-30
    函数 Python
  • python-opencv第二期:imwrite函数详解
    概要:众嗦粥之所周知,在如今计算机视觉(Computer Version short for CV)是人工智能与机器人技术发展的一个重大研究方向,而opencv作为一个专门为计算机视觉编程提供技术与函数支持的第三方库,自然是一个需要重点研究...
    99+
    2023-09-24
    opencv python 计算机视觉
  • python二分法查找函数底值
    假设连续函数f(x)在区间(a,b)上有一个底值m,且在该底值下的函数输出值为M,即f(m)=M,利用二分法查找该底值:(s为足够小的数) 令t=(a+b)/2,若|f(t)-M|&...
    99+
    2024-04-02
  • python二分法怎样查找函数底值
    今天就跟大家聊聊有关python二分法怎样查找函数底值,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。假设连续函数f(x)在区间(a,b)上有一个底值m,且在该底值下的函数输出值为M,...
    99+
    2023-06-22
  • python-opencv-cv2.threshold()二值化函数的使用
    目录1.cv2.threshold()参数说明2.代码示例1.cv2.threshold()参数说明 cv2.threshold(src, thresh, maxval, type[...
    99+
    2022-11-13
    python-opencv python cv2.threshold() 二值化函数
  • Python的bin()函数:将整数转换为二进制
    Python的bin()函数:将整数转换为二进制在Python编程中,经常会涉及到将整数转换为二进制的需求。而Python中的bin()函数正是一种快速、简单的方法来实现这一目标。bin()函数的基本语法是:b...
    99+
    2023-11-18
    二进制 bin() 整数转换
  • day 14 内置函数二
    1.昨日的补充 reversed    翻转, 将一个序列翻转,返回翻转序列的迭代器 lst = ["河南话", "四川话", "东北", "山东", "上海"]   n = reversed(lst) print(list(n)) ...
    99+
    2023-01-30
    函数 day
  • InfluxDB学习之InfluxDB常用函数(二)选择类函数
    1)BOTTOM()函数作用:返回一个字段中最小的N个值。字段类型必须是长整型或float64类型。语法:SELECT BOTTOM(<field_key>[,<tag_...
    99+
    2024-04-02
  • python 函数
    函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。定义: 函数是指将一...
    99+
    2023-01-30
    函数 python
  • Python函数
    1.Python函数基础 2.Python函数中的参数 3.Python模块 ...
    99+
    2023-01-30
    函数 Python
  • Python-函数
    一.定义函数def 函数名([形式参数]):    函数体                    函数要执行的程序    return 返回值        如果没有return返回,默认返回值为None;函数名([实参])注意:有返回值 ...
    99+
    2023-01-31
    函数 Python
  • python - 函数
    *********************函数****************************                                                     ---乐高积木之函数定义函数• ...
    99+
    2023-01-31
    函数 python
  • python 函数
    自定义函数的规则:你可以定义一个由自己想要功能的函数,以下是简单的规则: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。 任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。 函数的第一行语句可以选择性地...
    99+
    2023-01-31
    函数 python
  • [Python] 函数与函数编程
    1. 函数 使用def语句可定义函数: def add(x, y): return x + y 函数体就是在调用函数时所执行的一系列语句。调用函数的方法是在函数名称后面加上参数。参数的顺序必须与函数定义匹配,否则会引发TypeErr...
    99+
    2023-01-31
    函数 Python
  • Python 函数调用&定义函数&函数参
    一.函数调用 在python中内置了很多函数,我们可以直接调用 。想要调用函数首先要知道函数的名称及包含的参数,还可以通过查看python官方的文档:https://docs.python.org/3/library/functions....
    99+
    2023-01-30
    函数 定义 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作