python--函数

简介:

*******************    函数   ******************wKioL1lscc3Ranq_AAD0D2l6sCE889.png

  1. 定义函数
    def关键字,依次写出函数名、括号、括号中的参数和冒号 :
    在缩进块中编写函数体,函数的返回值用 return 语句返回。
    def func():
    pass                --pass 占位符
    return              --返回语句

    #函数在执行过程中一旦遇到return,函数就执行完毕,并将结果返回。
    #函数在执行过程中没有遇到return时,返回值None.
    [object Object]


    wKiom1lscc6gRn-1AADERvsl4vA506.png

    wKioL1lscc_AaWaFAACzJr6Iy7c454.png

  2. 调用函数
    Python 内置了很多有用的函数,我们可以直接调用:
    abs()            --求绝对值函数
    cmp()           --比较函数
    数据类型转换函数:
        int(), float(), str(),unicode(),bool()wKioL1lscc2x8a5WAAByRWxHIQk481.png

    wKioL1lscc6y9viEAABkQRd6Ey8210.png

  3. 理解函数名定义函数
    def关键字,依次写出
    函数名与变量名类似,其实就是指向一个函数对象的引用;
    给这个函数起了一个“别名”:函数名赋给一个变量

    wKiom1lsdVzyDstuAAA0SlmXAhY756.png


  4. 空函数
    定义一个什么事也不做的空函数,可以用 pass 语句;
    pass 可以用来作为占位符,还没想好怎么写函数的代码,就可以先放一个 pass ,让代码能运行起来
    def nofunc():
    pass

    wKiom1lscc_AkZyWAACjlGpqm6M977.png

  5. 参数检查
    调用函数时,如果参数个数不对,Python 解释器会自动检查出来,并抛出 TypeError;
    如果参数类型不对,Python 解释器就无法帮我们检查。
    数据类型检查可以用内置函数 isinstance 实现

    wKiom1lscdCgnVKZAAC3rzbz1Yw033.png

    wKioL1lscdChcYtaAACzK-XN_IY004.png

  6. 函数返回值
    函数可以返回多个值吗?那编写python程序,思考下:
    定义一个函数func,传入两个数字,返回两个数字的平均值与最大值。
    函数返回值用return关键字;
    返回一个 tuple 可以省略括号;
    Python 的函数返回多值其实就是返回一个 tuple函数执行完毕也没有 return 语句时,自动 return None

    wKioL1lscdGBXlh6AAEZQuwD6ls791.png

    wKiom1lscdKjngKFAAEOqx0HhR4285.png

  7. 函数参数
    默认参数可以降低调用函数的难度。
    定义一函数,计算x值的n次方。那如果计算x平方时只需要传入x值时怎么解决?
    默认参数注意事项:
    有多个参数时,变化大放前面,变化小的放后面;
    必选参数在前,默认参数在后


    wKioL1lsdnywJDt5AADyWrDhntE176.png

    wKiom1lsdn3w05T0AADywWwbJEA234.png

  8. 默认参数

    # 默认参数,必选参数同时存在函数中存在时,一定要将必选参数放在默认参数前面;
    # 设置默认参数时,把变化大的参数放前面,变化小的参数放后面,变化小的参数可以设置为默认参数。

    wKioL1lscdKhui-rAAEJfXaudig478.png

    wKiom1lscdPSlwXRAAEVkOidGNQ259.png

    wKiom1lscdTwwVnTAAD3HNxCHdg098.png

  9. 可变参数*args
    - 可变参数就是传入的参数个数是可变的,可以是 1 个、2 个到任意个,还可以是 0 个。

    # 定义函数时,形参可以为*args,使函数可以接收多个参数,接收的数据类型为元组;
    # 如果想将一个列表或者元组传入函数,也可通过*li 或 *t,将参数传入函数里。

  10. 关键字参数**kwargs
    关键字参数允许你传入 0 个或任意个含参数名的参数;
    这些关键字参数在函数内部自动组装为一个 dict;
    关键字参数用**kwargs


  11. 参数组合
    参数组合是指可以必选参数、 默认参数、 可变参数和关键字参数一起使用。
    参数定义的顺序必须是:必选参数、 默认参数、可变参数和关键字参数。


  12. 参数总结

    必选参数 > 默认参数 > 可变参数(*args)元组 > 关键字参数(**kwargs)字典
    1).必选参数
    2).默认参数:默认参数一定要用不可变对象
    3).可变参数:*args 是可变参数,args 接收的是一个元组 tuple
    4).关键字参数:**kwargs 是关键字参数,kw args接收的是一个字典dict
    对于任意函数,都可以通过类似 func(*args, **kwargs) 的形式调用它


  13. 变量的作用域
    局部变量:只能在函数内部使用的变量
    全局变量:在整个程序中使用的变量
    global关键字:强制将局部变量转换为全局变量

    wKioL1lscdTQlKwWAACblvRTQvI094.png



    wKioL1lsdsijJSr9AACtdxZV4_g290.png

本文转自cuijb0221 51CTO博客,原文链接:http://blog.51cto.com/cuijb/1948264
相关文章
|
14天前
|
Python
python函数的参数学习
学习Python函数参数涉及五个方面:1) 位置参数按顺序传递,如`func(1, 2, 3)`;2) 关键字参数通过名称传值,如`func(a=1, b=2, c=3)`;3) 默认参数设定默认值,如`func(a, b, c=0)`;4) 可变参数用*和**接收任意数量的位置和关键字参数,如`func(1, 2, 3, a=4, b=5, c=6)`;5) 参数组合结合不同类型的参数,如`func(1, 2, 3, a=4, b=5, c=6)`。
14 1
|
28天前
|
Python
Python函数使用(四)
Python函数使用(四)
60 0
|
1天前
|
数据挖掘 数据处理 索引
python常用pandas函数nlargest / nsmallest及其手动实现
python常用pandas函数nlargest / nsmallest及其手动实现
12 0
|
6天前
|
Serverless 开发者 Python
《Python 简易速速上手小册》第3章:Python 的函数和模块(2024 最新版)
《Python 简易速速上手小册》第3章:Python 的函数和模块(2024 最新版)
39 1
|
7天前
|
索引 Python
Python高维变量选择:SCAD平滑剪切绝对偏差惩罚、Lasso惩罚函数比较
Python高维变量选择:SCAD平滑剪切绝对偏差惩罚、Lasso惩罚函数比较
|
8天前
|
Python
python学习-函数模块,数据结构,字符串和列表(下)
python学习-函数模块,数据结构,字符串和列表
49 0
|
8天前
05-python之函数-函数的定义/函数的参数/函数返回值/函数说明文档/函数的嵌套使用/函数变量的作用域
05-python之函数-函数的定义/函数的参数/函数返回值/函数说明文档/函数的嵌套使用/函数变量的作用域
|
9天前
|
Python
python学习10-函数
python学习10-函数
|
9天前
|
Python
python学习4-内置函数range()、循环结构、循环控制语句、else语句、嵌套循环
python学习4-内置函数range()、循环结构、循环控制语句、else语句、嵌套循环
|
13天前
|
测试技术 开发者 Python
Python中的装饰器:优雅而强大的函数修饰工具
在Python编程中,装饰器是一种强大的工具,用于修改函数或方法的行为。本文将深入探讨Python中装饰器的概念、用法和实际应用,以及如何利用装饰器实现代码的优雅和高效。

热门文章

最新文章