• 函数的重点内容


    函数的重点内容

    一、函数的定义

    1.1什么是函数

    函数更多的是一种思想,他不是一种技术

    1.2函数的定义方式

    def 函数名():   #定义阶段(造车轮阶段)
        """函数注释写在这里"""    # 相当于函数的说明书
        <代码块>
    函数名()  #函数的调用阶段(开车阶段)
    
    #定义一个注册函数
    def register():
        """注册函数"""
        username = input('请输入你的用户名:')
        pwd = input('请输入你的密码:')
    
        with open('user_info.txt', 'a', encoding='utf8') as fa:
            fa.write(f'{username}:{pwd}|')
    register()
    

    定义阶段不执行代码,只检测语法错误

    二、函数定义的三种方式

    2.1空函数(只是定义了函数,然后啥也没有)

    ​ 只知道工具名但不知道如何选出这个函数

    def func():
        pass
    

    2.2无参函数(无参:未知数,变量)

    ​ 工具可以单独使用

    def add():
        x = input('num1:')
        y = input('num2:')    
        print(int(x)+int(y))
    add()
    

    2.3有参函数

    这个工具不能单独使用,必须得加个配件才能使用

    def add(x,y)
        print(int(x) + int(y))
        x = input('num1:')
        y = input('num2:')
    add(x, y)
    

    三、函数的调用

    假如我们输入的x,y分别是4和6

    def add(x,y)
        return x+y  #函数的返回值
        x = input('num1:')
        y = input('num2:')
    res = add(x, y)     #调用add函数,并将add的返回值赋值给res
    print(res*12)       #可以对函数的返回值进行其他操作
    --------------------------------------------------
    120    输出的最后的值为120
    

    四、函数的返回值

    def add(x, y):
        # return (x, y, x + y)  # return可以返回任意数据类型
        return x, y, x + y  # return可以返回任意数据类型,不加括号返回多个值时,默认用元祖的形式返回,如果没有return返回函数值就默认返回None
        x,y = add(1, 2)
    add()
    

    return其实就是函数的返回值,而且他还可以终值函数,当他输出函数的返回值的时候,他下面的代码就不会运行了。

    五、函数的参数

    5.1形参

    定义阶段才有形参,形式参数,啥也没有,知识占个位置,具有描述意义

    def func(x,y)  #形参
        preturn x+y
    add(1,2)    # 这里调用又是实参
    

    5.2 实参

    调用阶段才有实参,实际的参数,具有具体的值,也具有实实在在的意义

    def func(x,y)  
        preturn x+y
    add(1,2)  #实参
    

    5.3位置形参

    一个一个的写形参

    def add(num1,num2):   #位置形参
        '''有参函数'''
        print(int(num1) + int(num2))
    add()
    

    5.4 位置实参

    一个一个写过去

    def add(num1,num2):  
        '''有参函数'''
        print(int(num1) + int(num2))
    add(1,2)   #位置实参
    

    5.5默认形参

    不需要传参,可以使用默认值; 传参就使用你传的值, 位置形必须放到默认形参前面

    如果shopping('jiayi')里面没有传参数'jiayi'那么他就会使用默认值name='nick'
    --------------------------------------------------
    恭喜wenbin,得到特斯拉一个
    

    如果shopping('wenbin')里面没有传参数'wenbin'那么他就会使用默认值name='nick'

    def shopping(name='nick'):  # 形参经常会引用同一个值
        goods_dict = {1: '特斯拉', 2: '奔驰', 3: 'nick'}
        print(f'恭喜{name},得到{goods_dict[1]}一个')
    shopping()
    

    恭喜nick,得到特斯拉一个

    5.6关键字实参

    按照形参名给定具体的值,可以打破位置形参,必须得一一对应传值的规定,位置实参必须在关键字实参之前

    def shopping(x, name='nick'):
        goods_dict = {1: '特斯拉', 2: '奔驰', 3: 'nick'}
        print(f'恭喜{name},得到{goods_dict[x]}一个')
    shopping(1, name='wenbin')
    --------------------------------------------------
    恭喜wenbin,得到特斯拉一个
    

    位置实参1必须放在关键字实参name='wenbin',不然就会报错,而且有几个形参就得传几个值

  • 相关阅读:
    80.常用的返回QuerySet对象的方法使用详解:order_by
    79.常用的返回QuerySet对象的方法使用详解: filter, exclude,annotate
    78.objects对象所属类原理分析
    69.ORM查询条件:isnull和regex的使用
    北邮 自考 互联网及其应用 考核指导
    北邮 自考 Java语言程序设计(一) 考核指导
    计算机网络自考群
    电气工程及自动化 (独立本科) 自考
    清华大学 研究生 培养方案
    windows10 M557 连接 匹配
  • 原文地址:https://www.cnblogs.com/wwbplus/p/11353104.html
Copyright © 2020-2023  润新知