Python学习小结---函数

函数

函数是带名字的代码块,用于完成具体的工做。函数就是为了简化工做,用于执行特定任务的代码序列python

  • 简单的函数函数

    实例:测试

    def greet_user():    #def是一个关键字,代表你要定义一个函数,这里的函数不须要任何信息就能够执行
        """显示简单的问候语"""    #这是文档字符串的注释,通常用于函数的文档
        print("Hello!")    #函数须要作得工做,就是打印这一行代码
    #当咱们执行代码块中的代码是,只须要:
    greet_user()
    #-->Hello!
  • 传递参数
    有时候,函数须要一些信息而后作一些工做,若是咱们要传入信息,以即可以是函数处理时能够这么作:code

    def greet_user(username):
        """显示简单的问候语""" 
        print("Hello, "+username.title+"!")
        #这里并无处理,直接就使得函数输出了
    greet_user("jhon")
    #-->Hello, Jhon!

    形参和实参:不少时候,咱们会搞混这两个概念,如今咱们看看这两个词,从字面意思来看。形参:有形无实,从代码来说这就是一个没有赋值的变量,不表明任何一个数或字符等类型。实参有具体实意的变量,也就是被赋值过了,表明了一个类型,例如:i=5,这样i就是表明了5文档


所以,咱们来看函数greet_user(username),函数名括号中username是忽然出现的,在未使用毫无实际的意义,咱们叫它形参,greet_user("jhon")这里"jhon"是一个字符串,带有数据类型,是一个有实际意义的参数,咱们叫他实参,调用函数时,实参的值会被形参储存,在函数中形参就有了实参的值,能够直接对形参进行操做,进而改变实参,或者获得须要实参才能计算的到的数据。(形参改变了,实参不必定会改变,取决于它的类型,是列表时,形参变了实参也会变,可是是数字字符时,实参就不会变)字符串

  • 形参的各类形式
    (1)多个形参get

    函数能够传入多个实参,可是每次使用时必须有对应的实参
    ```python

    def greet_user(username,age,word):it

    """显示简单的问候语""" 
       print("Hello, "+username.title+"!")
       print("I'm "+age+" year old!")
       print(word)
       #这里并无处理,直接就使得函数输出了
       greet_user("jhon",18,"I'm fine")
       #-->Hello, Jhon!
       #-->I'm 18 year old!
       #-->I'm fine
       #"jhon"-储存->username字符串
       #18-存储->age数字
       #"I'm fine"-储存->word字符串

当形参的数量大于一个时,务必要注意你想传入的实参与其一一对应,不然会出现不可预知的问题
(2)关键字实参class

def greet_user(username,age,word):
    print("Hello, "+username.title+"!")
    print("I'm "+age+" year old!")
    print(word)
greet_user(username="jhon",word="I'm fine",age=18)
#-->Hello, Jhon!
#-->I'm 18 year old!
#-->I'm fine

见上面的代码,咱们看见实参的位置并不与形参相对应,这就是关键字实参的好处了,关键字实参可让你在调用时不用考虑形参的位置
(3)默认值变量

def greet_user(username,word,age=18):
    print("Hello, "+username.title+"!")
    print("I'm "+age+" year old!")
    print(word)
greet_user(username="jhon",word="I'm fine")
#-->Hello, Jhon!
#-->I'm 18 year old!
#-->I'm fine

以上,发如今定义函数是多了一行age=18,直接就给这个形参赋值了,这样来讲就能够不须要另外实参来赋值,固然咱们也能够传入覆盖这个默认值

(4)等效函数调用
```python
def des_pet(pet_name,anim_type="dog"):
    pass#一个没有实际意义的代码,用于测试
des_pet('willie')
des_pet(pet_name='willie')

des_pet('harry','hamster')
des_pet(pet_name="harry",anim_type="hamster")
des_pet(anim_type="hamster",pet_name="harry")
#以上对代码的调用都是能够的
```
  • 返回值
    函数在执行了代码序列以后,能够返回值,这个值能够是数字,字符,列表,元组,字典,能不能传函数有待测验,js能够

    def get_num(a,b):
        return a+b
    num=get_num(10,20)
    print(num)
    #-->30
相关文章
相关标签/搜索