2.3函数

Posted sszy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.3函数相关的知识,希望对你有一定的参考价值。

  1. 函数是什么?
    定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可
    特性:
    1、减少重复代码
    2、使程序变的可扩展
    3、使程序变得易维护

     

  2. 函数参数
    1、形参:只有被在调用时才分配内存单元,在调用结束时即可释放所分配的内存单元。
    2、实参:可以是常量,变量,表达式,函数等。无论实参是何种类型的量,在进行函数调用时,它们都必须有确定的值,以便把这些值传给形参。

     

  3. 默认参数
    def stu_register(name,age,course,country="CN"):
    #这个参数在调用时不指定,那默认就是CN,指定了的话,就用你指定的值

     

  4. 关键参数
    正常情况下,给函数传参数要按顺序,不想按顺序就可以用关键参数,只需指定参数名即可(指定了参数名的参数就叫关键参数),但记住一个要求就是,关键参数必须放在位置参数(以位置顺序确定对应关系的参数)之后

     

  5. 非固定参数
    若你的函数在定义时不确定用户想传入多少个参数,就可以使用非固定参数
    def stu_register(name,age,*args): # *args 会把多传入的参数变成一个元组形式
        print(name,age,args)
    
    stu_register("Alex",22)
    #输出
    #Alex 22 () #后面这个()就是args,只是因为没传值,所以为空
    
    stu_register("Jack",32,"CN","Python")
    #输出
    # Jack 32 (‘CN‘, ‘Python‘)

    还可以有一个**kwargs def stu_register(name,age,*args,**kwargs): # *kwargs 会把多传入的参数变成一个dict形式 print(name,age,args,kwargs) stu_register("Alex",22) #输出 #Alex 22 () {}#后面这个{}就是kwargs,只是因为没传值,所以为空 stu_register("Jack",32,"CN","Python",sex="Male",province="ShanDong") #输出 # Jack 32 (‘CN‘, ‘Python‘) {‘province‘: ‘ShanDong‘, ‘sex‘: ‘Male‘}

     

  6. 返回值
    函数外部的代码要想获取函数的执行结果,就可以在函数里用return语句把结果返回

     

以上是关于2.3函数的主要内容,如果未能解决你的问题,请参考以下文章

使用 koin 2.2.3 和 jetpack 导航在 2 个片段之间限定视图模型

VSCode自定义代码片段——声明函数

VSCode自定义代码片段8——声明函数

使用从循环内的代码片段中提取的函数避免代码冗余/计算开销

在 Visual Studio 中创建构造函数的代码片段或快捷方式

调用模板化成员函数:帮助我理解另一个 *** 帖子中的代码片段