返回顶部
首页 > 资讯 > 后端开发 > Python >Python - def 函数
  • 718
分享到

Python - def 函数

函数Pythondef 2023-01-30 23:01:11 718人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

1.def 函数 如果我们用代码实现了一个小功能,但想要在程序代码中重复使用,不能在代码中到处粘贴这些代码,因为这样做违反了软件工程中 DRY原则。 python 提供了 函数功能,可以将我们这部分功能抽象成一个函数以方便程序调用,或者提

1.def 函数

如果我们用代码实现了一个小功能,但想要在程序代码中重复使用,不能在代码中到处粘贴这些代码,因为这样做违反了软件工程中 DRY原则。 python 提供了 函数功能,可以将我们这部分功能抽象成一个函数以方便程序调用,或者提供给其他模块使用。

 

def function_name(parameters):

    expressions

 

Python中使用 def 开始函数定义,紧接着function_name是函数名,括号内部parameters为函数的参数,expressions内部为函数的具体功能实现代码,如果想要函数有返回值, 在 expressions 中的逻辑代码中用 return 返回。

 

 

实例

 

def function():

    print('This is a function')

    a = 1+2

    print(a)

 

上面我们定义了一个名字为 function 的函数,函数没有参数,所以括号内部为空,紧接着是函数的功能代码。如果执行该脚本,发现并没有输出任何输出,因为我们只定义了函数,而并没有执行函数。 这时我们在 Python 命令提示符中输入函数调用 function(), 注意这里调用函数的括号不能省略。那么 函数内部的功能代码将会执行,输出结果:

This is a function

 

如果我们想要在脚本中调用的脚本,只需要在脚本中最后添加函数调用语句

function()

那么在执行脚本的时候,将会执行函数。

 

2.函数参数

我们在调用函数的时候,想要指定一些变量的值在函数中使用,那么这些变量就是函数的参数,函数调用的时候, 传入即可。

 

def function_name(parameters):

    expressions

 

parameters 的位置就是函数的参数,在调用的时候传入即可。

 

实例

 

def func(a, b):

    c = a+b

    print('the c is ', c)

 

在这里定义一个函数func,其参数就是两个数值a, b,函数的功能就是把两个参数加起来 c = a+b。运行脚本后,在 Python 提示符内调用函数 func, 如果不指定参数 func(), 那么将会出错; 输出 func(1, 2),将 a=1, b=2 传入函数,输出 the c is 3 。所以在调用函数时候,参数个数和位置一定要按照函数定义。如果我们忘记了函数的参数的位置,只知道各个参数的名字,可以在 函数调用的过程中给指明特定的参数 func(a=1, b=2), 这样的话,参数的位置将不受影响,所以 func(b=2,a=1)是同样的 的效果。

 

 

3.函数默认参数

我们在定义函数时有时候有些参数在大部分情况下是相同的,只不过为了提高函数的适用性,提供了一些备选的参数, 为了方便函数调用,我们可以将这些参数设置为默认参数,那么该参数在函数调用过程中可以不需要明确给出。

 

def function_name(para_1,...,para_n=defau_n,..., para_m=defau_m):

    expressions

 

函数声明只需要在需要默认参数的地方用 = 号给定即可, 但是要注意所有的默认参数都不能出现在非默认参数的前面。

 

实例

 

def sale_car(price, color='red', brand='carmy', is_second_hand=True):

    print('price', price,

          'color', color,

          'brand', brand,

          'is_second_hand', is_second_hand,)

 

在这里定义了一个 sale_car 函数,参数为车的属性,但除了 price 之外,像 color, brand 和 is_second_hand 都是有默认值的,如果我们调用函数 sale_car(1000), 那么与 sale_car(1000, 'red', 'carmy', True) 是一样的效果。当然也可以在函数调用过程中传入特定的参数用来修改默认参数。通过默认参数可以减轻我们函数调用的复杂度。

 

 

4.进阶

4.1 自调用

如果想要在执行脚本的时候执行一些代码,比如单元测试,可以在脚本最后加上单元测试代码,但是该脚本作为一个模块对外提供功能的时候单元测试代码也会执行,这些往往我们不想要的,我们可以把这些代码放入脚本最后:

 

if __name__ == '__main__':

    #code_here

 

如果执行该脚本的时候,该 if 判断语句将会是 True,那么内部的代码将会执行。 如果外部调用该脚本,if 判断语句则为 False,内部代码将不会执行。

 

4.2 可变参数

顾名思义,函数的可变参数是传入的参数可以变化的,1个,2个到任意个。当然可以将这些 参数封装成一个 list 或者 tuple 传入,但不够 pythonic。使用可变参数可以很好解决该问题,注意可变参数在函数定义不能出现在特定参数和默认参数前面,因为可变参数会吞噬掉这些参数。

 

def report(name, *grades):

    total_grade = 0

    for grade in grades:

        total_grade += grade

    print(name, 'total grade is ', total_grade)

 

定义了一个函数report,传入一个参数为 name, 后面的参数 *grades使用了 * 修饰,表明该参数是一个可变参数,这是一个可迭代的对象。该函数输入姓名和各科的成绩,输出姓名和总共成绩。所以可以这样调用函数 report('Mike', 8, 9),输出的结果为 Mike total grade is 17, 也可以这样调用 report('Mike', 8, 9, 10),输出的结果为 Mike total grade is 27

 

4.3 关键字参数

关键字参数可以传入0个或者任意个含参数名的参数,这些参数名在函数定义中并没有出现,这些参数在函数内部自动封装成一个字典(dict).

def portrait(name, **kw):

    print('name is', name)

    for k,v in kw.items():

        print(k, v)

定义了一个函数portrait,传入一个参数 name, 和关键字参数 **kw,使用了 ** 修饰。表明该参数是关键字参数,通常来讲关键字参数是放在函数参数列表的最后。如果调用参数 portrait('Mike', age=24, country='China', education='bachelor') 输出:

name is Mike

age 24

country China

education bachelor

通过可变参数和关键字参数,任何函数都可以用 universal_func(*args, **kw) 表达。
---------------------
作者:iOSxi
来源:CSDN
原文:https://blog.csdn.net/iosxi/article/details/78663061
版权声明:本文为博主原创文章,转载请附上博文链接!

--结束END--

本文标题: Python - def 函数

本文链接: https://lsjlt.com/news/181190.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python - def 函数
    1.def 函数 如果我们用代码实现了一个小功能,但想要在程序代码中重复使用,不能在代码中到处粘贴这些代码,因为这样做违反了软件工程中 DRY原则。 Python 提供了 函数功能,可以将我们这部分功能抽象成一个函数以方便程序调用,或者提...
    99+
    2023-01-30
    函数 Python def
  • Python学习之函数 def
    目录一、函数概述二、函数的调用三、函数参数的使用规则1、位置参数2、关键字参数赋值3、位置参数和关键字参数混合使用4、参数组 **字典  *列表5、*列表6、**字典总结一...
    99+
    2024-04-02
  • python语法教程——def()函数
    什么是函数? 我们在编程的过程中往往会发现,实现某一功能的代码块会被频繁地使用。如果每次使用这段代码都得复制粘贴,这会使得代码冗长而又臃肿,增大了代码的阅读难度。为了方便我们实现对代码块的复用,人们提...
    99+
    2023-08-31
    python 开发语言
  • Python中def()函数怎么使用
    这篇文章主要介绍“Python中def()函数怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python中def()函数怎么使用”文章能帮助大家解决问题。一、判断以下哪些不能作为标识符A、a...
    99+
    2023-07-02
  • python标准函数def怎么用
    这篇文章主要介绍了python标准函数def怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。标准函数 def你可以定义一个由自己想要功能的函数,以下是简单的规则:函数代码...
    99+
    2023-06-03
  • python怎么用def函数输出素数
    以下是一个使用def函数输出素数的Python代码示例:```pythondef is_prime(n):if n ...
    99+
    2023-08-23
    python
  • Python中def()函数的实战练习题
    目录一、判断以下哪些不能作为标识符 A、aB、¥aC、_12D、$a@12E、falseF、False 答案为:(F、D、B、E) 二、输入数,判断这个数是否是质数(要求使用函数 +...
    99+
    2024-04-02
  • Python学习之如何理解函数def
    本篇内容主要讲解“Python学习之如何理解函数def”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python学习之如何理解函数def”吧!一、函数概述简单来说 函数 就是自己定义的一段 小程...
    99+
    2023-06-25
  • 浅谈Python中的函数(def)及参数传递操作
    如下所示: #抽象 (函数) # 1、callable 判断一个对象是否可以被调用 x = 1 def y(): return None callable(y) # y可以被调用 callable...
    99+
    2022-06-02
    Python def函数 参数传递
  • python中def的用法
    def 关键词用于定义 python 函数,是一段可执行特定任务并返回结果的代码块。它使用以下语法:def 函数名(参数列表):,其中函数名指函数的名称,参数列表指函数接收的输入,函数体...
    99+
    2024-05-15
    python
  • python中def什么意思
    python 中,def 关键字用于定义函数,这些函数是代码块,执行特定任务。函数语法为 def (参数列表)。函数可以通过其名字和圆括号调用。函数可以接受参数作为输入,并在函数体中使用...
    99+
    2024-05-15
    python
  • python中def的作用是什么
    python中def的作用是什么?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;...
    99+
    2023-06-14
  • python语法-def()详细介绍(特别全)
    1. 什么是函数 在 Python 中,函数是一种可重用的代码块,用于执行特定的任务或操作。函数可以接受输入参数,并返回输出结果,从而实现模块化和封装性编程的目的。Python 中定义函数的语法如下: def function_name(p...
    99+
    2023-09-09
    python 开发语言
  • python中def关键字的作用是什么
    这篇文章给大家介绍python中def关键字的作用是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。python的五大特点是什么python的五大特点:1.简单易学,开发程序时,专注的是解决问题,而不是搞明白语言本身...
    99+
    2023-06-14
  • python编程webpy框架模板之def with学习
    目录一:模板的理解二:简单模板三:def with四:注意一:模板的理解 模板是将一个事物的结构规律予以固定化、标准化的成果。 例如:网页的组成需要是html,head,body,你...
    99+
    2024-04-02
  • 怎么使用python编程webpy框架模板def with
    本篇内容介绍了“怎么使用python编程webpy框架模板def with”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一:模板的理解模板是...
    99+
    2023-06-25
  • python 函数
    函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。定义: 函数是指将一...
    99+
    2023-01-30
    函数 python
  • Python函数
    1.Python函数基础 2.Python函数中的参数 3.Python模块 ...
    99+
    2023-01-30
    函数 Python
  • Python-函数
    一.定义函数def 函数名([形式参数]):    函数体                    函数要执行的程序    return 返回值        如果没有return返回,默认返回值为None;函数名([实参])注意:有返回值 ...
    99+
    2023-01-31
    函数 Python
  • python - 函数
    *********************函数****************************                                                     ---乐高积木之函数定义函数• ...
    99+
    2023-01-31
    函数 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作