Python学习小结---函数

极客远征者
• 阅读 1616

函数

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

  • 简单的函数

    实例:

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

    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)多个形参

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

    def greet_user(username,age,word):

       """显示简单的问候语""" 
       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)关键字实参

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
点赞
收藏
评论区
推荐文章
郜小超 郜小超
4年前
用 async/await 来处理异步
一级标题昨天看了一篇vue的教程,作者用async/await来发送异步请求,从服务端获取数据,代码很简洁,同时async/await已经被标准化,是时候学习一下了。先说一下async的用法,它作为一个关键字放到函数前面,用于表示函数是一个异步函数,因为async就是异步的意思,异步函数也就意味着该函数的执行不会阻塞后面代码的执行。写一个async
Irene181 Irene181
4年前
一篇文章教会你使用Python中三种简单的函数
一、函数简介大家好,我是Go进阶者。所谓函数,就是指:把某些特定功能的代码组成为一个整体,这个整体就叫做函数。二、函数定义和调用什么是函数的定义:相当于自己定义了一个能完成某些事件的功能;就好比自己打造了一个工具。定义函数格式:deftest():print('嘻嘻')print('这是我的第一个函数')什么是函数调用:如果仅仅是定义了
Irene181 Irene181
4年前
一篇文章教会你使用Python中三种简单的函数
一、函数简介大家好,我是Go进阶者。所谓函数,就是指:把某些特定功能的代码组成为一个整体,这个整体就叫做函数。二、函数定义和调用什么是函数的定义:相当于自己定义了一个能完成某些事件的功能;就好比自己打造了一个工具。定义函数格式:deftest():print('嘻嘻')print('这是我的第一个函数')什么是函数调用:如果仅仅是定义了
莎利亚 莎利亚
4年前
PHP学习笔记之PHP的函数应用
目录一、函数的定义二、自定义函数三、函数的工作原理和结构化编程四、PHP变量的范围五、声明及应用各种形式的PHP函数六、递归函数七、使用自定义函数库一、函数的定义一个被命名的、独立的代码段,它执行特定的任务,并可能给调用它的程序返回一个值。定义中的各部分如下:函数是被命名的:每个函数都
Stella981 Stella981
3年前
JavaScript之函数
    玩js自然要和函数打交到。函数嘛简单来说就是给代码分个块,方便调用、信息隐藏和代码复用,还可以用于指定对象的行为。另外函数还可以玩出很多花样来。。。JavaScript使用关键字function定义函数。定义一个函数://函数声明//这种定义函数的好处是可以在当前作用域内任何位置调用,因为变量的声明和函数的
Stella981 Stella981
3年前
IDA Pro 权威指南学习笔记(十)
栈帧(stackframe)是在程序的运行时栈中分配的内存块,用于特定的函数调用如果一个函数没有执行则不需要内存,当函数被调用时就需要用到内存1.传给函数的参数的值需要存储到函数能够找到它们的位置2.函数在执行过程中可能需要临时的存储空间,通过声明局部变量来分配这类临时空间,这些变量在函数内部使用,函数调用完后,就无法再访问它们
Stella981 Stella981
3年前
Django 第十课 5.【聚合函数】
1:所有的聚合函数都是放在‘django.db.models’下面2:聚合函数不能单独执行,需要放在一些可以执行聚合函数的方法下面中去执行。比如‘aggregate’。示例代码如下:resultBook.objects.aggretate(Avg("price"))3:聚合函数执行完成后,给这个聚合函数的值去个名字,取名字的
Stella981 Stella981
3年前
Python装饰器用法实例总结
一、装饰器是什么python的装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。简单的说装饰器就是一个用来返回函数的函数。它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限校验等场景。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离
小万哥 小万哥
1年前
Go 语言函数、参数和返回值详解
函数是一组语句,可以在程序中重复使用。函数不会在页面加载时自动执行。函数将通过调用函数来执行。创建函数要创建(通常称为声明)一个函数,请执行以下操作:使用func关键字。指定函数的名称,后跟括号()。最后,在花括号内添加定义函数应执行的代码。语法Gofun
小万哥 小万哥
1年前
Python 函数:定义、调用、参数、递归和 Lambda 函数详解
函数是一段代码块,只有在调用时才会运行。您可以将数据(称为参数)传递给函数。函数可以返回数据作为结果。创建函数在Python中,使用def关键字定义函数:示例pythondefmyfunction():print("Hellofromafunction")
小万哥 小万哥
1年前
C 语言函数完全指南:创建、调用、参数传递、返回值解析
C语言中的函数函数是一段代码块,只有在被调用时才会运行。您可以将数据(称为参数)传递给函数。函数用于执行某些操作,它们对于重用代码很重要:定义一次代码,并多次使用。预定义函数事实证明,您已经知道什么是函数了例如,main()是一个函数,用于执行代码,pri