• 函数


    1.什么是函数:

      函数就是一种工具

      可以重复调研

    2.为什么要用函数

      1)防止代码冗余

      2)代码可读性差

    3.怎用函数

    1)定义函数 ——————>制造工具

    2)调用函数 ——————>使用工具

    关键字 函数名+括号:

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

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

    def index():
        print('Hello world')
    
    
    print(index())
    
    
    
    
    Hello world
    None

    1.无参函数

      def index():

        print('ok')

    2.空函数

      def login ():

        pass

    3.有参函数

    username = 'sean'

    password = '123'

    def login(username,password):

      print(username,password) 

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

    1.不写return:默认返回none

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

    3.写return none:与return效果一样

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

    5.return返回多个值:

    1)将返回的多个值存入元组后返回(默认)

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

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

    函数参数:

      函数先定义后调用,在定义阶段只检测语法

    形参:

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

    实参:

      是在函数条用阶段传入的参数,它相对于定义变量时的变量值

    注意:

    def index(a):
        print(a)
        print(b)
    
    a=1
    b=1
    index(a)
    
    
    
    结果:
    1
    2
    
    def index(a):
        print(a)
        print(b)
    
    a=1
    index(a)
    b=1
    
    报错

    位置参数:

    通过位置进行传参

    def foo(a,b):
        print(a,b)
    fool(2,1)
    
    结果:
    2  1

    关键字参数:

      指定参数进行传参

    ps:

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

    默认参数:

    在定义函数阶段就已经传入参数,如果说你在实参的时候传入了一个新的参数,就会使用新参数,默认参数在传值时,一般不要将可变类型当作参数传递

    典型例题
    # 第一种
    def register(username, age, hobby, l1=None):
        if not l1:
            l1 = [hobby]
            print(username, age, hobby, l1)
    
    
    register('root', 15, 'read')
    register('ios', 55, 'study')
    register('btn', 45, 'learn')
    
    
    # 第二种
    def register(username, age, hobby):
        l1 = [hobby]
        print(username, age, hobby, l1)
    
    
    register('root', 15, 'read')
    register('ios', 55, 'study')
    register('btn', 45, 'learn')
    
    
    执行结果:
    root 15 read ['read']
    ios 55 study ['study']
    btn 45 learn ['learn']

    应用场景:

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

    可变长参数

    官方认证:*args:可以接收所有溢出的位置参数,接收的值存于元组中(args)

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

    *打散你传入的容器类型  位置参数

    **kwargs :接收所在溢出的关键字参数,存在于字典中(kwargs)*字典 返回key

  • 相关阅读:
    输入函数
    pe结构讲解
    pe结构讲解
    小甲鱼pe结构讲解
    pe结构讲解
    pe结构讲解
    YUI3学习笔记 ( 7 )
    [转载 css]用CSS调整scrollbar(滚动条)的配色
    [转载 js]一次性解决png在i6下的透明问题(包括做为img和背景的两种情况)
    YUI3学习笔记 ( 7 )
  • 原文地址:https://www.cnblogs.com/godlover/p/11827817.html
Copyright © 2020-2023  润新知