zoukankan      html  css  js  c++  java
  • 默认值参数

    # 默认值参数:在函数的定义阶段,形参(变量名)就已经被赋值了
    # 在调用的时候可以不为默认值形参传值,默认使用定义阶段就已经绑定的值
    # 在调用的时候如果可以给默认值形参传值 传了那么就使用你传的值
    # 在定义阶段 默认值形参必须放在位置形参的后面

    # def my_max(x,y=100):
    # if x > y:
    # return x
    # return y
    # # res = my_max(200)
    # res1 = my_max(200,1000)
    # res2 = my_max(y=200,x=1000)
    # print(res2)

    # def register(username,age,gender='male'):
    # print(username,age,gender)
    # register('jason',18)
    # register('tank',28)
    # register('egon',84)
    # register('kevin',58)
    # register('xiaohou',17,'female')


    # 默认值参数的应用场景
    # 当形参接收的到值比较单一的情况下 通常可以考虑用默认值形参


    # def info(username,hobby,l=None):
    # if l == None:
    # l = []
    # l.append(hobby)
    # print('%s 的爱好是 %s'%(username,l))
    # info('jason','study')
    # info('tank','生蚝')
    # info('kevin','喝腰子汤')
    # info('egon','女教练')

    # 解决方法1
    # info('jason','study',[])
    # info('tank','生蚝',[])
    # info('kevin','喝腰子汤',[])
    # info('egon','女教练',[])

    # 解决方法2
    # info('jason','study')
    # info('tank','生蚝')
    # info('kevin','喝腰子汤')
    # info('egon','女教练')


    # m = 100
    # def my_max(x,y=m):
    # print(x,y)
    # m = 222
    # my_max(111)

    def func(x,y=100):
    print(x,y)

    """
    函数在定义阶段 内部所使用的变量都已经初始化完毕了
    不会因为调用的位置的变化 而影响到内部的值(暂时可忽略)


    函数无论在什么地方被调用
    都会跑到函数定义阶段去执行代码
    形参中用到的值都是往函数定义阶段代码往上找
    """

  • 相关阅读:
    Codeforces Round #733
    [ZJOI2007] 时态同步(树形dp)
    最大子树和(树形dp)
    P2015 二叉苹果树
    没有上司的舞会(经典树形dp)
    P3884 [JLOI2009]二叉树问题(LCA)
    Bin Packing Problem(线段树 + multiset)
    P4281 [AHOI2008]紧急集合 / 聚会(最近公共祖先)
    P3128 [USACO15DEC]Max Flow P(LCA 树上差分)
    java中Set接口用法
  • 原文地址:https://www.cnblogs.com/yangxinpython/p/11159138.html
Copyright © 2011-2022 走看看