博客
关于我
Python:函数使用
阅读量:797 次
发布时间:2023-03-08

本文共 1633 字,大约阅读时间需要 5 分钟。

函数的基本介绍

函数与方法的区别

函数是直接被调用,而方法是通过对象调用。函数可以独立存在,而方法则是属于某个类的实例。

示例:

  • print("hello") 是一个函数。
  • l1.append(2) 是一个方法,l1 是一个 list 实例。

函数的定义

Python允许定义有返回值和无返回值的函数。

示例:

def func(a, b):    return a + b
  • func 是一个有返回值的函数。
  • def func(): 是一个无返回值的函数。

Python支持参数类型提示,提高代码可维护性。

函数返回值及传参的情况

有参有返回

def say1(name1):    return name1

调用方式:say1("李四")

无参有返回

def say2():    return "被调用"

调用方式:say2()

无参无返回

def say3():    print("无参无返回")

调用方式:say3()

在 Java 中,方法被 void 修饰后返回 null,而 Python 中无参无返回的方法返回 None。

函数传参方式

  • 位置传参:res(1, 2)
  • 关键字传参:add(a=3, b=6)
  • 缺省传参:def res(a, b=3),调用方式:res(1) 或 res(1, 2)
  • 可变参数示例:

    def add(*a):    print(a)    print(type(a))add(1, 2, 3, 4, 5, 6, 7)

    字典参数示例:

    def chen(**a):    print(a)    print(type(a))chen(a=2, b=3, c=4)

    返回多个值

    利用 Python 的返回值特点,完成一个案例:

    def jisuan(*arr):    min = arr[0]    max = arr[0]    total = 0    for i in arr:        if i < min:            min = i        if i > max:            max = i        total += i    return min, max, total

    调用方式:print(jisuan(1, 2, 3, 4, 5))

    函数嵌套

    使用递归完成求和(1-100):

    def sum(n):    if n < 2:        return n    else:        return n + sum(n - 1)print(sum(100))

    lambda 表达式

    Python 中的 lambda 表达式用于简化函数定义。

    示例:

    jia = lambda a, b: a + bprint(jia(1, 3))

    案例:

    arr = [1, 2, 3, 4, 5, 6, 7]arr2 = map(lambda a: a * 2, arr)for i in arr2:    print(i)

    案例:

    a = [1, 2, 3, 4, 5, 6, 7]b = [8, 9, 10, 11, 12, 13, 14]xj = lambda a, b: a + bc = map(lambda e1, e2: e1 + e2, a, b)for i in c:    print(i)

    案例:

    d = filter(lambda e: e > 5, b)for i in d:    print(i)

    案例:

    persons = [    {"name": "张三", "age": 20},    {"name": "李四", "age": 17},    {"name": "王麻子", "age": 21}]persons.sort(key=lambda p: p['age'], reverse=True)print(persons)

    转载地址:http://wdlfk.baihongyu.com/

    你可能感兴趣的文章
    python-queue队列通信
    查看>>
    python-ros No module named PyKDL
    查看>>
    python-social-auth 是否需要会话
    查看>>
    Python再获年度编程语言,微软或成最大赢家
    查看>>
    python-week5
    查看>>
    Python写表情包搜索工具(非常详细)零基础入门到精通,收藏这一篇就够了
    查看>>
    Python-【1】配置
    查看>>
    Python-从子文件夹执行绝对导入
    查看>>
    Python-刷新页面,直到元素可单击
    查看>>
    PYTHON-唤醒+VOSK+DEEPSEEK+离线合成-实现纯离线大模型问答
    查看>>
    Python-在Dash回调中重用函数
    查看>>
    PYTHON-基本数据类型-元祖类型,字典类型,集合类型
    查看>>
    python-外观模式
    查看>>
    Python-如何使用FastAPI和uvicorn.run而不阻塞线程?
    查看>>
    Python-字典
    查看>>
    python-字符串
    查看>>
    Python-将二进制遮罩转换为多边形
    查看>>
    python-文件操作
    查看>>
    PYTHON-模块 sys os random shutil-练习
    查看>>
    Python-模块与包的管理
    查看>>