zoukankan      html  css  js  c++  java
  • 函数

    函数:
    函数:对功能的封装
    语法:
    def 函数名(形参):
       函数体
    函数名(实参)

    函数名:命名规则和变量一样

    # while 1:
    #     print("首先, 打开手机")
    #     print("打开陌陌")
    #     print("找一个看着还不错的某一某")
    #     print("出来约一约.开开心心")
    #     print("各回各家,各找各妈")
    
    # 需要把上面这个功能进行定义或者封装. 在需要的时候.随时拿过来执行, 封装的这个东西就是函数
    
    # 定义一个功能叫yue
    def yue():
        # 函数体,代码块
        print("首先, 打开手机")
        print("打开陌陌")
        print("找一个看着还不错的某一某")
        print("出来约一约.开开心心")
        print("各回各家,各找各妈")
    
    # 函数的调用, 函数名()
    yue()   # 执行函数  # 第一次调用
    print("正常上班")
    yue()   # 第二次调用
    

      

    函数的返回值:
    return, 函数执行完毕. 不会执行后面逻辑
    1. 如果函数中不写return返回None
    2. 只写return 返回None
    3. return 返回值. 返回一个值
    4. return 值1, 值2,... 返回多个值. 调用方接收到的是元组

    def yue():
        print("约你")
        print("约他")
        print("我不约")
        return "大妈"    # return 返回值  当函数结束的时候. 给调用方一个结果
    
    ret = yue()
    print(ret)
    
    ret2 = yue()
    print(ret2)
    
     只要函数执行到return 函数就会停止执行
    1. 每个函数如果在函数中不写return, 默认返回None
    2. 我们也可以只写一个return, 也是返回None, 停止函数的执行
    3. return 一个返回值.  你在调用方能接受到一个返回值
    4. return 多个返回值. 多个值需要用,隔开   接收的位置. 接收的是元组.
    
    def yue():
        print("约一约")
        return  # 函数就停止了
    ret = yue()
    print(ret)
    
    def yue():
        print("打开陌陌")
        print("大阳哥出马")
        return "大妈", "萝莉", "模特"
    
    a,b,c = yue() #  多个返回值在接受的位置接受到的是tuple类型的数据
    print(a)
    print(b)
    print(c)
    

      


    参数:
    在函数执行的时候给函数传递的信息
    1. 形参:
    1. 位置参数.
    2. 默认值参数. 当调用的时候不给传值使用默认值
    3. 混合使用. 顺序: 1. 位置参数, 2, 默认值参数
    2. 实参:
    1.位置参数. 按照位置给形参赋值
    2. 关键字参数. 按照名称给形参赋值
    3. 混合参数. 先用位置参数, 再用关键字参数

    def yue(fangshi, age):   # 形参
        print("打开手机")
        print("打开%s" % fangshi)
        print("找一个漂亮的妹子")
        print("年龄最好是%s" % age)
        print("出来约一约")
    
    yue("微信")
    yue("探探", 38)
    yue("陌陌", 26)
    
    def fn(a,b,c):
        print(a)
        print(b)
        print(c)
    
    fn(1, 2, 3)
    fn(b=3, a=2, c=1)  # 在实参调用的时候 . 可以指定参数的值是多少. 关键字(形参)参数
    
    
    def gn(name, age, address, id, sex, hobby):
        print("人的名字叫%s, 年龄:%s, 地址:%s, id是:%s, 性别:%s, 爱好是:%s" % (name, age, address, id, sex, hobby))
    gn("太白", 58, "保定", 1, "不详", "女")    # 位置参数
    gn(id=1, name="太白", address="保定", hobby="女", age=58, sex="不详")  # 关键字(形参)参数
    gn("太白", 58, "保定", id="3", sex="女", hobby="不详")
    
    def regist(id, name, sex="男"):
        print("录入学生信息:id是%s, 名字是%s, 性别是:%s" % (id, name, sex))
    
    regist(1, "大阳哥")
    regist(2, "徐卫星")
    regist(3, "毛尖妹妹", "女")
    
    
    # 参数: 在函数执行的时候给函数传递的信息
    # 形参: 在函数声明的位置.声明出来变量
    # 实参: 在函数调用的时候. 实际你给函数传递的值 
    # 函数的参数个数是没有要求的 但是,在运行的时候. 形参和实参要匹配. 按照位置把实参赋值给形参
    # 参数的分类:
    #   站在实参的角度:
    #       1. 位置参数
    #       2. 关键字参数
    #       3. 混合参数, 注意顺序. 先写位置参数, 然后在写关键字参数. 否则会报错
    #   站在形参的角度:
    #       1. 位置参数
    #       2. 默认值参数
    #       3. 默认值参数和位置参数混合使用. 顺序: 先写位置参数. 然后在写默认值参数
    

     函数的实际应用

    1+2+3+4+5+6+7+8+9+....+100 = ? 5050
    对功能的封装
    def sum(n):
        s = 0
        count = 1
        while count <= n:
            s = s + count
            count = count + 1
        return s
    
    ret = sum(456)
    print(ret)
    
    计算n是奇数还是偶数
    
    def fn(n):
        if n%2 == 0:
            return "偶数"
        return "奇数"
    
    print(fn(456))
    
    lst = ["大阳哥", "徐卫星"]
    print(lst.append("胡辣汤"))    # 没有return
    
    s = "哈哈"
    print(s.replace("哈", "呵"))  # 一定有return
    

      

  • 相关阅读:
    简单理解OOP——面向对象编程
    SpringMVC拦截器
    Vue简洁及基本用法
    springMVC实现文件上传下载
    Python笔记⑤爬虫
    Python笔记4
    Python笔记3
    Python基础语法笔记2
    Python基础入门语法1
    Navicat连接mysql时候出现1251错误代码
  • 原文地址:https://www.cnblogs.com/duanpengpeng/p/9299005.html
Copyright © 2011-2022 走看看