Python语言学习:函数学习和总结

数据科学与人工智能

共 2745字,需浏览 6分钟

 · 2022-01-19

2022年第02周。
这一周Python语言学习,记录如下。

01

函数学习和总结

1 函数是什么?

函数是一组有组织的、可复用的代码,用于执行单个相关操作。

2 为什么学习函数?

函数为您的应用程序提供了更好的模块化高度的代码复用

3 函数构建

Python语言创建函数的简单规则。

  • 1 函数块以关键词def开头,后面跟着函数名和小括号。

  • 2 各种类型的输入参数写在小括号内。

  • 3 函数代码块以冒号结尾并缩进。

  • 4 撰写函数文档字符串

  • 5 设计和实现函数体,用来告诉函数要做什么事情

  • 6 使用return返回函数值(可选)

函数构建模板类似如下

def functionname( parameters ):
   "function_docstring"
   function_suite
   return [expression]

举例说明如下:

def calculate_sum(val1, val2):
    """
    This is a longer docstring defining also the args and the return value.

    Args:
        val1: the first parameter
        val2: the second parameter
    Returns:
        result: The sum of val1 and val2

    """


    result = val1 + val2

    return result

4 函数调用

根据函数名和参数类型,进行正确调用就可以了。后面的函数参数类型会学习各种丰富的函数调用。

print(help(calculate_sum))
print(calculate_sum(100100))

4 函数参数类型

Python创建的函数,参数类型非常地丰富。熟练掌握它们,可以设计和实现强大而灵活的应用程序。

函数的参数类型包括位置参数、默认参数、可变参数、关键字参数、命名关键字参数。这些参数类型组合在一块的时候,顺序依次为位置参数,默认参数,可变参数,命名关键字参数,关键字参数。

关于这些参数类型,我们可以这样通俗地理解。

若是参数类型没有可变性,我们可以采用位置参数,若是位置参数里面某一个参数或者几个参数的值是稳定的,我们就可以把它设为默认参数,注意默认参数需要排在位置参数后面。如果是可变参数,我们可以采用可变参数或者关键字参数,如果对于关键字,我们需要进一步限定,这个时候,我们就可以使用命名关键字参数。

再次重申一遍,若是这些参数类型混搭时,请按着位置参数、默认参数、可变参数、命名关键词参数和关键词参数来排序和设计。

4.1 位置参数

举例如下:

def power(x, n):
    s = 1
    while n > 0:
        n = n - 1
        s = s * x

    return s

print(power(25)

4.2 默认参数

举例如下:

def power(x, n=2):
    s = 1
    while n > 0:
        n = n - 1
        s = s * x

    return s

print(power(5))
print(power(54))

4.3 可变参数

举例如下:

def calc(*numbers):
    sum = 0
    for n in numbers:
        sum = sum + n * n 

    return sum

print(calc(12))
print(calc(123))
print(calc(*[123]))
print(calc(*(123))

4.4 关键字参数

举例如下:

def person(name, age, **kw):
    print('name:', name, 'age:', age, 'other:', kw)

print(person('John'30, city='zhongshan'))
print(person('John'20, city='zhongshan', job='teacher'))

name = 'luqin'
age = 30

info = {'city':'zhongshan''job':'DS''sex':'M'}

person(name, age, **info)

args = ('luqin'30)
kw =  {'city':'zhongshan''job':'DS''sex':'M'}
person(*args, **kw)

4.5 命名关键字参数

举例如下:

def person1(name, age, *, city, job):
    print(name, age, city, job)

person1('Jack'24,  city='Beijing', job='teacher')

4.5 各种参数类型组合使用

举例如下:

# 各种参数类型组合
def func(a, b, c=0, *args, d, **kw):
    print('a =', a, 'b =', b, 'c =', c, 'args', args, 'd =', d, 'kw =', kw)

args = (12345)
kw = {'d':100'city':'zhongshan''job':'teacher'}

func(*args, **kw)

对于任意函数,都可以通过类似func(*args, **kw)的形式调用它,无论它的参数是如何定义的。

实际工作中,建议避免这种操作,不利于函数的使用。

5 小结

  • 1 函数可以让你模块化编程,让代码具有高度复用性,不在避免重复造轮子。

  • 2 函数的参数类型非常灵活。

  • 3 任意函数,都可以类似func(*args, **kw)的形式调用它。


我创建了Python语言群,你可以扫描下方二维码,添加我的微信,备注:姓名-Python群,我邀请你加入群,一起学习和进步。


如果你觉得内容有用,请关注下方公众号~


如果你想找数据工作,请关注下方公众号~


Python语言学习专辑:

2022年第01周:Python语言学习


如果觉得本文不错,就顺手帮我转发到朋友圈和微信群哦。

浏览 20
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报