9. Python函数

作者: 软件测试汪 | 来源:发表于2019-02-19 09:48 被阅读55次

函数

函数能提高应用的模块性,和代码的重复利用率。定义一个函数比较简单,但是需要遵循以下几点规则:

  1. 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()。
  2. 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
  3. 函数内容以冒号起始,并且缩进。
  4. return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。

定义函数格式

def 函数名(参数):
    函数体

参数主要有以下4种类型:必需参数、关键字参数、默认参数、不定长参数

必传参数

必传参数须以正确的顺序传入函数。调用时的数量必须和声明时的一样。如果我们定义一个加法函数,需要我们传入2个参数,如果我们只传入一个参数,就会出现语法错误如下代码所示:

def add(a, b):
    return a + b

print(add(1))

上面代码将输出如下内容:

Traceback (most recent call last):
File "F:/blogApiTest/test4.py", line 4, in <module>
print(add(1))
TypeError: add() missing 1 required positional argument: 'b'

关键字参数

函数调用使用关键字参数来确定传入的参数值。使用关键字参数允许函数调用时参数的顺序与声明时不一致,因为 Python 解释器能够用参数名匹配参数值。如下代码所示:

def person(name, age):
    print("名字: ", name)
    print("年龄: ", age)

# person
person(age=50, name="testDog")

我们必传参数的顺序是name、age,如果我们想要使用关键字参数,我们在调用person函数的时候,通过参数名赋值,改变参数传入顺序。

默认参数

调用函数时,如果没有传递参数,则会使用默认参数。以下实例中如果没有传入 age 参数,则使用默认值,如下代码所示:

def person(name, age=35):
    print("名字: ", name)
    print("年龄: ", age)


# person
person(age=50, name="testDog")
print("------------------------")
person(name="testDog")

上面代码将输出如下内容:

名字: testDog
年龄: 50
名字: testDog
年龄: 35

可变参数

加了星号 * 的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。
可变参数格式

def 函数名(*参数):
    函数体

我们现在有一个需求,定义一个加法函数,这个加法函数可以接收任意个参数然后进行相加,那么如何去实现呢?这里就要用到可变参数。如下代码所示:

def add(*numbers):
    sum = 0
    for n in numbers:
        if type(n) == int or type(n) == float:
            sum = sum + n
        else:
            n = 0
            sum = sum + n
    return sum


print(add(1, 2, 'a'))

上面代码将输出如下内容:

3

上面代码比较简单,定义一个加法函数,参数类型是可变参数类型,我们已经知道可变参数格式是元组形式,所以我们读取元组中每一个数据进行相加,如果元组中数据不是数字,我们把数据替换为0。

欢迎关注微信公众号:软件测试汪。软件测试交流群:809111560

相关文章

  • 【Python爬虫】- #9.第九次 Python函数

    # 9.第九次 Python函数 # 一、定义g到kg的转换函数,效果如图: def Change_kg(a): ...

  • 9. Python函数

    函数 函数能提高应用的模块性,和代码的重复利用率。定义一个函数比较简单,但是需要遵循以下几点规则: 函数代码块以 ...

  • Python_0基础:9.函数

    思考:下列代码的问题 一、定义函数 定义函数的格式如下: 很多重复的业务逻辑,重复出现的时候,我们可以使用函数 示...

  • Python - 2017/01/28-函数

    调用python内置函数 函数名(参数) 即可调用python内置函数 help(函数名) 返回python对于函...

  • AutoLisp中常见的函数(2)

    6. 等待输入函数 7. 几何运算函数 8. 对象处理函数 9. 选择集、符号表处理函数 10. AutoCAD相...

  • Python函数式介绍一 - 高阶函数

    Python函数式介绍一 - 高阶函数Python函数式介绍二 - 链式调用 最近为了给朋友推广Python函数式...

  • Python高阶函数学习笔记

    python中的高阶函数是指能够接收函数作为参数的函数 python中map()函数map()是 Python 内...

  • Python学习笔记1

    Python注释 Python变量 Python运算符 Python输入输出 输入函数 输出函数(3.x) ...

  • Python:内置函数

    python的内置函数,匿名函数 内置函数 内置函数就是python给你提供的,拿来直接用的函数,比如print,...

  • 9.箭头函数

网友评论

    本文标题:9. Python函数

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