博客
关于我
【Lemon】Python的函数
阅读量:761 次
发布时间:2019-03-23

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

函数的定义

在编写代码时,函数是一个非常重要的概念,因为它可以将复杂的逻辑进行封装,使代码更加灵活和可维护。函数的基本结构如下:

def 函数名(参数1, 参数2, ...):    # 函数内部的功能代码    return 返回值

函数名的命名规范

  • 函数名可以由数字和符号组成,不能使用关键字。
  • 不要与内置函数和模块重名。
  • 推荐使用下划线命名法。

函数的参数

函数的参数定义在括号中,分为实参和形参。

实参分类

  • 位置传参:按顺序传递。
  • 关键字传参:通过参数名指定。
  • 参数类型

  • 必备参数:必须传递若干个参数。
  • 默认参数:传递或不传递。
  • 不定长参数:使用*args**kwargs接收多个位置和关键字参数。
  • 示例

    def add_number(a, b=0, *args):    print(f"a + b = {a + b}")    print(f"接收到的额外参数:{args}")add_number(5, 3, 2, 4)

    函数的返回值:return

    • 使用return语句传递返回值。
    • 未使用return则默认返回None
    • 支持返回多个值。

    函数参数的拆包

    • 使用*接收不定长参数。
    • 使用**接收关键字参数。

    示例

    def func(*args, **kwargs):    print("位置参数:", args)    print("关键字参数:", kwargs)func(1, 2, 3, a=5, b=6)

    调用示例

    def func(a, b, c, d):    print(a, b, c, d)tu = (1, 2, 3, 4)li = [5, 6, 7, 8]dic = {'x': 9, 'y': 10}func(*tu)  # 调用时拆包为(1,2,3,4)func(*li)  # 拆包为5,6,7,8func(**dic)  # 拆包为x=9, y=10

    函数的作用域

    • 局部变量:仅函数内部有效。
    • 全局变量:在外部文件或模块中定义。

    使用global声明可以将局部变量变为全局变量。

    a = 100  # 全局变量def func():    global my_var    my_var = 10    print("全局变量a: ", a)    print("局部变量my_var: ", my_var)

    示例

    def delete_even():    global list_num    list_num = [2, 4]delete_even()print(list_num)

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

    你可能感兴趣的文章
    NIFI1.23.2_最新版_性能优化通用_技巧积累_使用NIFI表达式过滤表_随时更新---大数据之Nifi工作笔记0063
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_根据binlog实现数据实时delete同步_实际操作04---大数据之Nifi工作笔记0043
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置binlog_使用处理器抓取binlog数据_实际操作01---大数据之Nifi工作笔记0040
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置数据路由_实现数据插入数据到目标数据库_实际操作03---大数据之Nifi工作笔记0042
    查看>>
    NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置数据路由_生成插入Sql语句_实际操作02---大数据之Nifi工作笔记0041
    查看>>
    NIFI从MySql中离线读取数据再导入到MySql中_03_来吧用NIFI实现_数据分页获取功能---大数据之Nifi工作笔记0038
    查看>>
    NIFI从MySql中离线读取数据再导入到MySql中_不带分页处理_01_QueryDatabaseTable获取数据_原0036---大数据之Nifi工作笔记0064
    查看>>
    NIFI从MySql中离线读取数据再导入到MySql中_无分页功能_02_转换数据_分割数据_提取JSON数据_替换拼接SQL_添加分页---大数据之Nifi工作笔记0037
    查看>>
    NIFI从PostGresql中离线读取数据再导入到MySql中_带有数据分页获取功能_不带分页不能用_NIFI资料太少了---大数据之Nifi工作笔记0039
    查看>>
    nifi使用过程-常见问题-以及入门总结---大数据之Nifi工作笔记0012
    查看>>
    NIFI分页获取Mysql数据_导入到Hbase中_并可通过phoenix客户端查询_含金量很高的一篇_搞了好久_实际操作05---大数据之Nifi工作笔记0045
    查看>>
    NIFI分页获取Postgresql数据到Hbase中_实际操作---大数据之Nifi工作笔记0049
    查看>>
    NIFI同步MySql数据_到SqlServer_错误_驱动程序无法通过使用安全套接字层(SSL)加密与SQL Server_Navicat连接SqlServer---大数据之Nifi工作笔记0047
    查看>>
    Nifi同步过程中报错create_time字段找不到_实际目标表和源表中没有这个字段---大数据之Nifi工作笔记0066
    查看>>
    NIFI大数据进阶_FlowFile拓扑_对FlowFile内容和属性的修改删除添加_介绍和描述_以及实际操作---大数据之Nifi工作笔记0023
    查看>>
    NIFI大数据进阶_FlowFile生成器_GenerateFlowFile处理器_ReplaceText处理器_处理器介绍_处理过程说明---大数据之Nifi工作笔记0019
    查看>>
    NIFI大数据进阶_Json内容转换为Hive支持的文本格式_操作方法说明_01_EvaluteJsonPath处理器---大数据之Nifi工作笔记0031
    查看>>
    NIFI大数据进阶_Kafka使用相关说明_实际操作Kafka消费者处理器_来消费kafka数据---大数据之Nifi工作笔记0037
    查看>>
    NIFI大数据进阶_Kafka使用相关说明_实际操作Kafka生产者---大数据之Nifi工作笔记0036
    查看>>
    NIFI大数据进阶_NIFI的模板和组的使用-介绍和实际操作_创建组_嵌套组_模板创建下载_导入---大数据之Nifi工作笔记0022
    查看>>