• 函数


    1、为什么要有函数?什么是函数?
    用来解决:
    1)、组织结构不清晰,可读性差
    2)、代码冗余,有许多需要重复使用的代码。
    3)、管理维护程序与程序的扩展型。

    具备某一个功能的工具就是程序的中函数
    事先准备工具的过程就是函数的定义
    拿来就用就是在函数的调用。

    牢记!!!!
    所以函数的使用必须遵循:先定义,再调用!!!!!
    #定义函数:
    '''
    1、语法
    def 函数名(参数1,参数2,...):
    """
    文档描述
    """
    代码1
    代码2
    代码3
    return 值

    def:定义函数的关键字
    函数名:是用来调用函数的,
    函数名的命名必须能反映出函数的功能
    文档描述:推荐写上,来增强函数的可读性
    代码块:函数的功能实现代码
    return:函数的返回值

    '''

    #1.1 定义阶段
    # def print_sym(sym,count): # print_sym=<function print_msg at 0x000001B2A33698C8>
    # print(sym*count)
    #
    # def print_msg(msg):
    # print('33[045m%s33[0m' %msg)

    #1.2 调用阶段:函数名加括号就是在调用函数

    # print(print_sym)
    # print_sym('#',30)
    # print_msg('hello egon')
    # print_sym('#',30)


    #2 定义函数的三种类型:
    #2.1 有参函数:参数是函数体代码用来接收外部传入值的
    # 示例:
    # def max2(x,y): #x,y就是用来收外部输入的参数.
    # # x=10
    # # y=3
    # if x > y:
    # print(x)
    # else:
    # print(y)
    #调用:
    # max2(100,101)
    #结果,打印101

    #2.2 无参函数:当函数体的代码逻辑不需要函数的调用者掺入值的情况下,就无参
    #示例1.
    # def func():
    # print('----------------------')
    # print('---soft run-----------')
    # print('----------------------')
    #示例2.
    # def interactive():
    # name=input('username>>: ').strip()
    # pwd=input('password>>: ').strip()
    # print(name,pwd)
    #
    # interactive() #定义时无参,意味着调用时也无须传入参数


    #小练习:
    # uname_of_db='egon'
    # pwd_of_db='123'
    #
    # def interactive():
    # uname_of_inp=input('username>>: ').strip()
    # pwd_of_inp=input('password>>: ').strip()
    # return uname_of_inp,pwd_of_inp
    # def auth(uname,pwd):
    # if uname == uname_of_db and pwd == pwd_of_db:
    # print('登陆成功')
    # else:
    # print('登陆失败')

    # interactive()
    # # auth()
    # res=interactive()
    # # x=res[0]
    # # y=res[1]
    # print(res)
    # print(y)
    #
    # auth(x,y)

    #2.3 空函数:函数体为pass
    #主要用来设计代码结构.

    调用函数:
    函数的使用必须遵循:先定义,后调用的原则
    #注意:没事先定义函数而直接调用,就相当于在引用一个不存在的变量名
    #定义阶段:在定义阶段只检测语法,不执行函数体代码
    #调用阶段:根据函数名找到函数的内存地址,然后执行函数体代码
    #示例1.

    # def func():
    # xxx
    # print('sadfsadf'(语法错误..)



    #函数名加括号即调用函数
    #示例2.
    # def bar():
    # print('from bar')
    #
    # foo()

    # #定义阶段
    # def foo():
    # print('from foo')
    # bar()
    #
    # def bar():
    # print('from bar')
    #
    # 调用阶段
    # foo()



    # #定义阶段

    # def foo():
    # print('from foo')
    # bar()
    #
    # foo() # 调用阶段
    #
    # def bar():
    # print('from bar')
    #由于 bar()没有定义故报错.

    # 调用函数的三种形式
    #1、直接调用
    # def func():
    # print('from func')
    #
    # func()


    #2、表达式形式,赋值.
    # def max2(x,y):
    # if x > y:
    # return x
    # else:
    # return y
    #
    # res=max2(10,3)
    # print(res)

    #3、当作另一个函数的传入.
    #
    # def max2(x,y):
    # if x > y:
    # return x
    # else:
    # return y

    # res=max2(10,3)*100
    # print(res)


    函数的返回值:
    什么时候应该有返回值:
    #函数体代码运行完毕后需要有一个返回结果给调用者

    #返回值有三种形式:

    #1 没有return,返回值None
    # def func():
    # pass
    #
    # res=func()
    # print(res)

    #2 return后跟一个值,返回该值本身
    # def func1():
    # return 1
    #
    # res=func1()
    # print(res)

    #3 return可以逗号分隔,返回多个值,会返回一个元组给调用者
    # def func2():
    # return 1,2,[1,2,3]
    #
    # res=func2()
    # print(res)


    # return注意点:
    #1、return返回值的值,没有类型限制
    #2、return是函数结束的标志,函数内可以写多个return,但
    #执行一次,函数就立刻结束,并把return后的值作为本次调用的返回值
    # 示例:
    # def func3():
    # print('first')
    # return 1
    # print('second')
    # return 2
    # print('third')
    # return 3
    #
    # res=func3()
    # print(res) #只打印出第一个return的值.
  • 相关阅读:
    171. Excel Sheet Column Number (Easy)
    349. Intersection of Two Arrays (Easy)
    453. Minimum Moves to Equal Array Elements (Easy)
    657. Judge Route Circle (Easy)
    CSS笔记
    保存页面状态
    UI开发总结
    ubuntu 下配置munin
    反向代理配置
    JavaScript 高级程序设计第二版
  • 原文地址:https://www.cnblogs.com/yangwei666/p/8651586.html
Copyright © 2020-2023  润新知