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

    函数

    • 自定义函数
    • 调用函数
    • 函数的参数
    • 函数的递归

    参数传递方式

    • 位置传递
    fact(1,2)
    
    • 名称传递
    fact(m=1,n=2)
    

    关键字参数

    def Hello(greeting="Hello",name="world"):
        print('{},{}!'.format(greeting,name))
    
    Hello()
    Hello("goodbye")
    Hello("greeting","university")
    

    • 通过名称指定的参数叫做关键字参数,调用时候与位置无关
    • 可指定默认值,调用函数可以不提供参数,或者提供部分参数

    位置参数和关键字参数可以混合使用,但位置参数必须在前、关键字参数在后

    可变参数

    1. 不定长参数,在调用函数的时候,可以接受任意数量的实参,这些实参在传递给函数的时候会被封装成字典或者元组
    2. 一般情况下不定长参数会放在一般参数的最后,一般参数会按照顺序一一对应,剩下的传给补丁长参数
    3. 其实不定长参数也可以放在一般参数的前面,但是调用的时候必须按照关键字参数的形式给对应位置赋值
    def StuInfo1(name,*args):
        print('姓名:',name,'其他,',args)
    
    def StuInfo2(name,**args):
        print('姓名:,',name,',其他:,',args)
    
    def StuInfo3(name,*args,country='中国'):
        print('姓名:', name, ',国家:', country, ',其他:', args)
    

    返回值

    • 函数可以返回多个返回值
    • return 传递函数返回值
    • 返回值可以有也可以没有
    • 没有返回值 return None

    作用域

    局部变量 全局变量
    定义位置 函数中 函数体外
    作用域 函数体内 全局
    生命周期 函数结束释放 在程序结束前存在

    global

    nolocal

    • nonlocal: 在Python中,函数的定义可以嵌套,即在一个函数的函数体中可以包含另一个函数的定义。
    • 通过nonlocal关键字,可以使内层的函数直接使用外
      层函数中定义的变量

  • 相关阅读:
    BZOJ 1004: [HNOI2008]Cards [Polya 生成函数DP]
    BZOJ 1119: [POI2009]SLO [置换群]
    POJ 2154 Color [Polya 数论]
    POJ 2409 Let it Bead [置换群 Polya]
    POJ置换群入门[3/3]
    [置换群&Polya计数]【学习笔记】
    查看linux中的TCP连接数
    SIT测试 和 UAT测试
    原生app是什么意思?
    线程池原理
  • 原文地址:https://www.cnblogs.com/mengxiaoleng/p/11549189.html
Copyright © 2011-2022 走看看