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

    一 .python中函数定义:函数是逻辑结构化和过程化的一种编程方法

    python 中函数定义方法:(为了完成某一个特定的功能而存在的)
    
    def 函数名(参数):
      
      ...
      函数体
      ...
      返回值
    
    函数的定义主要有如下要点:
    
    def:定义函数的关键字
    函数名:日后根据函数名调用函数
    ():内可定义形参,为函数提供数据
    函数体:函数中进行一系列的逻辑运算,如发送邮件;计算出[22,33,44,55,66]中的最大数等...
    " " :文档描述(非必要,但强烈建议为你的函数添加描述信息)即注释
    x+=1:泛指代码块或程序处理逻辑
    return:定义返回值,当函数执行完毕后,可以给调用者返回数据
    
    
    
    
    
    
    调用运行:可以带参也可以不带
    函数名()
    
    使用函数的好处:
    1.减少代码重用
    2.保持一致性,易维护
    3.可扩展性

    二.函数和过程

    过程定义:过程就是简单特殊没有返回值的函数(python过程也是函数)

    def test02():
        msg = 'hello DaLang'
        print(msg)
        return msg
    
    
    def test03():
        msg = 'CongHui'
        print(msg)
        return 1, 2, 3, ['dream'], {'name': 'alex'}
    
    
    t1 = test01()
    t2 = test02()
    t3 = test03()
    print(t1)
    print(t2)
    print(t3)

    总结:

      返回值数=0:返回None

      返回值数=1:返回oinject

      返回值数>1:返回y

    三.函数参数

    1.形参只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只在函数的内部有效。函数调用结束返回主调用函数后则不能再使用该形参变量。

    2.实参可以是常量/变量/表达式/函数等,无论实参是何种类型的量,在进行函数调用时,他们都必须有确定的值,以便把这些值传给形参。因此应预先用赋值,输入等办法使参数获得确定值。

    # 改成用函数写
    def calc(x,y):                   #形参
        res = x**y                 #**表示平方
        return res                  #函数遇到return 结束
    c = calc (3,3)                   #实参
    print (c)

    3.位置参数和关键字(标准调用:实参与形参位置一一对应;关键字调用:位置无须固定)

    #位置参数,必须一一对应,缺一不行多一也不行
    def test(x,y,z):
    print(x)
    print(y)
    print(z)
    test (1,3,6)
        
    #关键字参数,无须一一对应,缺一不行多一也不行
    def test(x,y,z)
    print(x)
    print(y)
    print(z)
    test(x=6,y=5,z=7)
    #位置参数必须在关键字参数左边
    test(1,y=2,3)  #报错
    test(1,3,y=2)   #报错
    test(1,3,z=2)
    test(1,3,z=2,y=4)   #报错

    4.默认参数:

    def handle(x,type=None):
        print(x)
        print(type)
    handle("hello")

    5.参数组:*列表     **字典

    def test(x,*args):
        print(x)
        print(args)
        print(args[2])
    test(1,2,3,4,5,6)


    #关键字参数
    def test(x,**kwargs):
    print(x)
    print(kwargs)

    test(2,y=2,z=3)
    #test(1,y=2,z=3,z=3)#报错:一个参数不能传两个值


    def test(x,*args,**kwargs):
      print(x)
      print(args,args[-1])
      print(kwargs,kwargs['y']
    test(1,2,3,4,5,y=8,z=7)
  • 相关阅读:
    多字段截取然后验证 js
    web端上传图片,截取证件照
    bootstrap学习
    响应式网站设计心得
    不懂这几个问题就落后了:Python、Android开发者必读!
    这48个Java技术点,让你的面试成功率提升5倍!
    C++之父谈C++:一天之内你就能学会出色使用C++
    常用正则表达式
    解决vs验证控件报错” WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptResourceMapping”问题
    怎么就那么难啊我去
  • 原文地址:https://www.cnblogs.com/hui147258/p/10810797.html
Copyright © 2011-2022 走看看