zoukankan      html  css  js  c++  java
  • python函数

    函数                                                     
    函数作用
        减少代码冗余
        逻辑清晰
        不易维护
    函数分类
        内置函数
        自定义函数

    函数定义
        函数先定义,后使用

    函数使用
        1.定义阶段
        2.使用阶段
        语法
        def func_name (para1,para2,...)
            """文档注释"""
            函数体
            return value
    定义函数的三种形式
        一、无参函数
            无参函数仅仅只是执行一些操作而已,通常有返回值
        二、有参函数
            函数的功能依赖于外部参数的传入,通常都有返回值
            三元表达式
            res=x if x > y else y
        三、空函数
            定义代码模块的框架
    函数的调用
        按参数分
            定义时有参,调用时必须传入参数
            定义时无参,调用时无须传入参数
        按调用函数的形式和位置分
            调用函数的语句形式
                例如:foo()
            调用语句的表达式形式
                例如:res=my_max(1,2)*123
                print(res)
            把函数调用作为另外一个函数的参数
                例如:res=my_max(my_max(10,20),30)
                print(res)
    函数的返回值
        1.一个值
        2.多个值
        3.None
            没有return
            return 什么都不写
            return None
        针对多个返回值的情况
        注:1.返回值是以元组的形式返回,可以用一个变量接收;
             2.(unpack)如果是用多个变量来接收,有几个返回值,接收时就得有几个变量来接收,如果想丢弃返回值,可以使用占位符

    函数参数
        从大的角度区分
            形参
            实参
        详细区分
            位置参数
            关键字参数
            默认参数
            可变长参数
            命名关键字参数

            位置参数
                位置形参,必须被传值
                位置实参,与形参一一对应
            关键字参数
                key=value
                注意的问题
                     1.关键字实参必须位于位置实参的后面
                     2.不能重复对一个形参传值
            默认参数
                一、默认参数必须跟在非默认参数后,在定义阶段就会报错
                二、默认参数在定义阶段就已经被赋值了,而且只在定义阶段赋值一次
                三、默认参数通常定义成不可变类型
            可变长参数
                *args:会把溢出的按位置定义的实参都接收,以元组的形式赋值给args
                **kwargs:会把溢出的按关键字定义的实参都接收,以字典的形式赋值给kwargs
            命名关键字参数

  • 相关阅读:
    hdu 1395 2^x(mod n) = 1(C++)(欧拉定理 分解素因数)
    6. 数论准备知识
    hdu 2973 YAPTCHA(C++)(威尔逊定理)
    牛客小白月赛12——B.华华教月月做数学
    牛客小白月赛12——A.华华听月月唱歌
    5. 卡特兰数(Catalan)公式、证明、代码、典例.
    4.质数判定和质数筛法(埃拉托色尼筛选法,线性筛法/欧拉筛法)
    3.牛顿迭代法求解方程的根
    Codeforces刷题
    刷题计划
  • 原文地址:https://www.cnblogs.com/geek-ace/p/6857792.html
Copyright © 2011-2022 走看看