美文网首页
python函数的创建和参数问题

python函数的创建和参数问题

作者: 路口不会转弯 | 来源:发表于2020-02-20 10:03 被阅读0次

    python——函数

    一,函数的创建与调用

    ​ 开展之前,先说一下为什么要有函数存在:

    ​ 假如每当我们实现同一个功能,就要重新输入代码,是不是太麻烦了?如果我们能把这段代码封装起来,用一个名称代替,每次使用到这个功能就用名称调用,是不是非常爽。这就是函数存在的意义。

    创建函数的格式:

    #####  def function_name () :
    #####      代码块
    >>>def myfirstfunction():
           print("人生苦短,我学python!")
    ## 调用函数
    >>> myfirstfunction()
    人生苦短,我学python!
    

    函数后面的小括号是什么呢?请看下面:

    二,函数的参数

    ​ 同样,先说一下为什么要有参数的存在:

    ​ 试想一下,假如括号里任何东西都没有,每当我们调用函数时,每次执行的语句都一样,当碰到其他情况了怎么办呢?所以,参数的存在就是为了实现函数的个性化,使得函数能应用不同的要求。

    >>> def mysecondfunction(language):
        print("人生苦短,我学{}".format(language))
    >>> mysecondfunction("R")
    人生苦短,我学R
    >>> mysecondfunction("python")
    人生苦短,我学python
    

    对于.format()字符串格式化的使用,请看Python的基本数据类型

    我们可以发现,当我们通过参数传入不同的内容时,函数会根据我们的需求,打印出我们想要的结果,是不是很神奇?

    三,函数的返回值

    ​ 老规矩,为什么会有函数返回值的存在呢:

    ​ 顾名思义,我们执行函数要的就是其返回值。return语句用来结束函数并将程序返回到调用函数的位置,继续执行下面的程序。

    ## 很简单,只需要在函数中使用关键字return,后面跟着指定要返回的值
    >>> def add(a,b):
        return a + b
    >>> add(1,3)
    4
    

    四,函数参数的具体理解

    ​ 参数既然能神奇的让函数变得个性化,自然它的灵活度就决定了函数的灵活度。下面谈谈我对函数参数的一些理解。

    1,形参和实参:

    ​ 跟绝大多数编程语言一样,形参指的就是创建函数时,小括号里的参数,实参就是你实际递给括号里的参数

    ## 形参就是括号里的language 
    >>> def mysecondfunction(language):
        print("人生苦短,我学{}".format(language))
    ## “R”就是我们传给函数的实参
    >>> mysecondfunction("R")
    人生苦短,我学R
    

    2,关键字参数:

    普通的参数叫位置参数,顾名思义就是参数有顺序,我们要按照括号里给定的参数顺序传递给函数。但是这样又有问题,假如我们粗心记错了参数的顺序,传入参数的顺序不正确怎么办?关键字参数给了一个好的解决办法。

    >>> def play(name = "keyangou" , game = "LOL"):
        print(name + " play " + game)
    >>> play("老王" , "王者荣耀")
    老王 play 王者荣耀
    >>> play("王者荣耀" , "老王")
    王者荣耀 play 老王
    >>> play(game = "王者荣耀" , name = "老王")
    老王 play 王者荣耀
    

    ​ 当我们指定关键词的时候,就不用担心顺序问题啦~~~~

    3,默认参数

    ​ 默认参数很好理解,就是在括号里给形参一个默认值,使得在调用函数时,即使不填写该参数,也不会报错,并且以给定的默认值执行函数。

    >>> def play(name = "keyangou" , game = "LOL"):
        print(name + " play " + game)
    keyangou play LOL    
    

    注意 :大家创建的函数有默认参数时,一定要把默认参数放在最后!

    4,收集参数

    ​ 收集参数为什么会存在?

    ​ 作者写函数的时候,也不知道函数到底需要几个参数....所以,这种情况仅需在参数前面加上星号(*)即可

    >>> def test(*params):
        print("有{}个参数".format(params))
        print("第二个参数是:",params[1])
    >>> test("G" , "o","l","d")
    有('G', 'o', 'l', 'd')个参数
    第二个参数是: o
    

    注意:在使用收集参数时,收集参数后面的参数一定要用关键参数来指定,否则python都会把你的实参列入收集参数的范畴!

    相关文章

      网友评论

          本文标题:python函数的创建和参数问题

          本文链接:https://www.haomeiwen.com/subject/oyvtqhtx.html