zoukankan      html  css  js  c++  java
  • 函数的基本使用

    1、什么是函数

      函数就是一种工具

      可以重复调用

    2、为什么要用函数

      1、防止代码冗余

      2、代码的可读性差

    3、怎么用函数

      1、定义函数-->制造工具

      2、调用函数-->使用工具

    1、无参函数:
    
      def index():
    
      print('ok')
    
    2、空函数:
    
    def login():
    
    pass
    
    3、有参函数
    
    def login(username):
    
    print(username)

    返回值:

      1、不写return:默认返回None

      2、只写return:只有结束函数体代码的效果,返回None

      3、写return None:与只写return的效果相同

      4、return返回一个值:可以将放回的结果,当做一个变量值来使用

      5、return返回多个值:

        1、将返回的多个值,默认存入元组返回

         2、函数的返回值不想被修改

        3、可以自己指定返回的数据类型

    return:它是一个函数结束的标志,函数体代码只要执行到return,函数执行结束

    函数的参数:

      函数是先定义,后调用

      在定义阶段只检测语法,

      不执行任何代码

    参数的类型

      形参:是在函数定义阶段就规定的参数,它就相当于定义变量时的变量名

      实参:是在函数调用阶段传入的参数,它相当于定义变量时的变量值

    python代码从上到下依次执行
        def index(a): #形参:相当于变量名
            print(a)
            print(b)
        if a > b:
            print(a)
        else:
            print(b)
            
        a = 1
        index(a) #实参:相当于变量值
        b = 2

    传参方式:

      位置参数: 通过位置进行传参 关键字参数: 指定参数进行传参

            ps:位置参数一定一定一定要在关键字参数之前, 连用的时候,不要对同一个形参重复赋值

        默认参数:

        在定义函数阶段就已经传入参数,

        如果说你在传值的时候传入了一个新的参数,就会使用新参数

        默认参数在传值的时候,不要将可变类型当做参数传递

    应用场景:

        当参数对应值重复出现的情况下使用默认参数

    def reg(username,password,gender='male'):
        print(f'用户名:{username},密码:{password},性别:{gender}')
    reg('tank','dsb')
    reg('jason',dsb)
    reg('egon',xsb)
    
    第一种解决
    def reg(hobby,l1=None) #四个形参
        if l1 == None:
            l1 = []
        l1.append(hobby)
        print(f'爱好:{l1}')
    reg(hobby = '生蚝')
    reg('大保健')
    reg('女教练')
    第二种方法
    def reg(hobby,l1):#四个形参
        l1.append(hobby)
        print(f'爱好:{l1}')
    reg('生蚝',[])
    reg('大保健',[])
    reg('女教练',[])

     可变长参数:

      *args:接收所有溢出的位置参数,接受的值都被存入一个元组

        官方认证:*args

        只要有*就有可变长参数的效果

      **kwargs:接收所有溢出的关键字参数,接收的值都被存入一个字典

        官方认证:**kwargs

      *:放到实参中就是打散

    def func(a, b, c, d,**kw):
        print(a, b, c, d,kw)
    
    
    func(1, 2, c=3, d=4, e=5, f=6)
    
    l1 = [1,2,3,4]
    t1 = (1,2,3,4)
    d1 = {'name':'tank','age':73}
    
    print(*l1)
    print(*t1)
    print(d1)

    函数名的命名规范与变量名一样

    关键字(def)函数名(index)括号:

    函数描述:描述函数体代码的功能

    def index():
        """
        from index
        :return:
        """
        print('hello world')
    
    
    def login():
        """
        登录
        :return:
        """
        pass
    
    
    def register():
        """
        注册
        :return:
        """
        pass
  • 相关阅读:
    口罩预约管理系统——系统网站实现(前端+PHP+MySQL)
    口罩预约管理系统——数据库设计(前端+PHP+MySQL)
    购书网站前端实现(HTML+CSS+JavaScript)
    HMM隐马尔可夫模型来龙去脉(二)
    Linux环境编程进程间通信机制理解
    Linux基本命令及编程环境实验
    大数据技术
    ModuleNotFoundError: No module named '_ctypes'的解决方案
    page-break-inside,page-break-before 分页
    C.char字符串的拼接和const char*的转换
  • 原文地址:https://www.cnblogs.com/lvguchujiu/p/11826528.html
Copyright © 2011-2022 走看看