博客
关于我
Python:函数使用
阅读量:796 次
发布时间: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初步学习-python数据类型-集合(set)
    查看>>
    python列表生成字典_Python中将字典转换为列表的方法
    查看>>
    python列表对应元素合并为列表及判断一个列表是几维
    查看>>
    python列表去重复后按照顺序_从包含不可共元素的Python列表中删除重复元素,同时保留顺序?...
    查看>>
    python列表前几个_python之列表
    查看>>
    python列表元组
    查看>>
    Python列表/元组/字典和集合使用
    查看>>
    python列表 行列选择_python_pandas_dataframe_行列选择_切片操作
    查看>>
    python列表
    查看>>
    python列出当前目录、子目录和文件的脚本
    查看>>
    python+flask计算机毕业设计骨科门诊患者档案管理系统(程序+开题+论文)
    查看>>
    python+flask计算机毕业设计高校体测管理系统的设计与实现(程序+开题+论文)
    查看>>
    Python切片对象和__getitem__
    查看>>
    python+flask计算机毕业设计高校体育赛事系统(程序+开题+论文)
    查看>>
    python+flask计算机毕业设计高校体育运动会比赛系统(程序+开题+论文)
    查看>>
    python+flask计算机毕业设计高校危化品管理系统(程序+开题+论文)
    查看>>
    python+flask计算机毕业设计高校教学档案管理系统(程序+开题+论文)
    查看>>
    python+flask计算机毕业设计高校教学督导平台(程序+开题+论文)
    查看>>
    python+flask计算机毕业设计高校数字化迎新系统(程序+开题+论文)
    查看>>
    python+flask计算机毕业设计高校校内景点平台(程序+开题+论文)
    查看>>