python语法教程——def()函数

这篇具有很好参考价值的文章主要介绍了python语法教程——def()函数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

什么是函数?

我们在编程的过程中往往会发现,实现某一功能的代码块会被频繁地使用。如果每次使用这段代码都得复制粘贴,这会使得代码冗长而又臃肿,增大了代码的阅读难度。为了方便我们实现对代码块的复用,人们提出了函数功能。

如何定义函数?

函数的定义以关键字def开头,后面接函数名称和圆括号。
括号中放入函数需要的参数。
通过冒号和缩进控制函数内容。
函数的结构如下所示:

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

定义第一个函数

在学习一门语言时,我们最先学会的是如何输出Hello world。那么,我们的第一个函数也就从最简单的输出Hello world开始。

def hello():
    print('Hello world!')
    
hello()

输出:

Hello world!

可以看到,我们调用了我们定义的hello函数,函数执行了其中的print语句。

什么是形参实参,什么是返回值?

这里我们定义一个可以计算两个数之和的函数add1,可以先运行一下看看。

def add1(num1, num2):
    result = num1 + num2

    return result

x1, x2 = 1, 2
y = add1(x1, x2)
print(y)

输出:

3

函数完美地计算出了1加2的值。

同刚才的Hello world函数相比,我在add函数中加入了num1、num2和return。其运作原理如下:
在调用add函数时,我们将x1,x2传入add中,由num1和num2分别接收了来自x1和x2的值,将num1和num2的数值相加后传给result,最后函数输出result的值给y,我们打印出y的值,就是3。

那么这里面的num1、num2就是形参,x1、x2就是实参,return result就是函数的返回语句,其返回的就是result的值,所以result就是返回值。

由此可见,形参就是我们在函数定义过程中定义在括号内的参数。实参就是我们输入函数的参数,返回值就是return后面的语句的计算值。

我比较喜欢通过数学中对函数的定义来理解编程语言中的函数。在数学中函数的定义式是y = f(x)那么这里x就是我们传入的参数,f就是函数体,用来对x进行计算,计算结果y就是函数的返回值。

函数参数的一些额外用法

还是刚才的add1函数,但是我们参数的赋值方式不一样了:

def add1(num1, num2):
    result = num1 + num2

    return result
    
y = add1(num1=1, num2=2)
print(y)

输出:

3

我们也可以对函数的形参赋予初始值

def add2(num1=1, num2=1):
    result = num1 + num2

    return result

y = add2()
print(y)

输出:

2

在形参赋初值的情况下,我们又可以如下进行传参。

def add2(num1=1, num2=2):
    result = num1 + num2

    return result

y = add2(3)
print(y)

输出:

5

可见3按顺序替换了add2函数的第一个形参,导致num1变为3,result变为5。

那如果我们想不按顺序更改其中的参数呢?

def add2(num1=1, num2=2):
    result = num1 + num2

    return result

y = add2(num2=3)
print(y)

输出:

4

可以看到,3并没有按顺序替换add2函数的第一个参数,而是传给了num2,这样result的值就是4了。

任意传递实参

当我们传入函数中的参数不固定怎么办呢?

def save(*temp):
    return temp


y = save('1', 2, 'abc', True)
print(y)

输出:

('1', 2, 'abc', True)

可以看到,如果形参加上一个星号,它就相当于一个元组,我们传入的参数将以元组的形式保存。

def student(**temp):
    return temp


y = student(name='老王', age=20, high=180, is_student=True)
print(y)

输出:

{'name': '老王', 'age': 20, 'high': 180, 'is_student': True}

当形参前带有两个星号时,它就相当于一个字典了。

附加

函数也可以写在其他文件里用来调用。这里我们还是用一开始的add1函数。

from aboutadd import add1


y = add1(1, 2)
print(y)

输出:

3

通过图片可以看到文件间的关系。
python def函数,python,开发语言
python def函数,python,开发语言
python def函数,python,开发语言文章来源地址https://www.toymoban.com/news/detail-779084.html

到了这里,关于python语法教程——def()函数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【python基础】—函数def()的定义与调用、参数、return返回值及变量作用域

    语法: 举例: 上面我们定义一个名字为hello的函数,括号内部是函数接收的参数name,紧接着就是函数的功能代码。 多次调用 位置参数 这里的\\\"手拍黄瓜\\\"和\\\"大米饭\\\"是对应参数appetizer和course的位置顺序传递的,所以被叫作位置参数,这也是最常见的参数类型。 默认参数 注意

    2024年02月02日
    浏览(34)
  • [Python物联网]Python基础知识和语法--控制流和函数--Python快速上手开发物联网上位机程序

    目录 一、前言         二、条件语句 三、循环语句         1.for循环         2.while循环 四、函数 五、总结         Python的控制流语句允许程序根据特定条件执行不同的代码块。Python中的常见控制流语句包括 条件语句 和 循环语句 。在本篇文章中,我们将讨论

    2024年02月04日
    浏览(55)
  • C语言-基础语法学习-1 函数

    当我们需要在C语言中传递一维数组作为函数的形参时,需要了解以下几个关键点: 函数声明和定义:在声明和定义函数时,我们可以使用以下方式指定一维数组作为形参: 或者 这两种方式都允许我们传递一个一维数组作为形参。 数组传递:在C语言中,数组传递实际上是通

    2024年02月12日
    浏览(44)
  • 编程语言MoonBit新增矩阵函数的语法糖

    1. 新增矩阵函数的语法糖 新增矩阵函数的语法糖,用于方便地定义局部函数和具有模式匹配的匿名函数: 2. 新增使用 T::{ ... } 构造结构体的语法 这个新语法可用于显式的指定结构体的类型,并会使得结构体内有更好的补全: 3. 正式移除 var id = expr 的语法 4. 增加了新的关键

    2024年01月23日
    浏览(32)
  • Python函数——函数的基础定义语法

    在Python编程中,函数是构建高效代码的关键。通过创建可重用的代码块,我们可以使程序更加清晰、易读且易于维护。在本文中,我们将深入了解Python函数的基本概念、特性以及如何在编程实践中灵活运用它们。 1、函数的定义: 函数是一段具有特定功能的代码块,它可以接

    2024年02月20日
    浏览(28)
  • Vue3通透教程【六】setup语法糖、computed函数、watch函数

    专栏介绍: 凉哥作为 Vue 的忠实 粉丝输出过大量的 Vue 文章,应粉丝要求开始更新 Vue3 的相关技术文章,Vue 框架目前的地位大家应该都晓得,所谓三大框架使用人数最多,公司选型最多的框架,凉哥之前在文章中也提到过就是 Vue 框架之所以火起来的原因,和 Vue 框架相比其

    2024年01月20日
    浏览(34)
  • 【python基础语法五】python函数和函数相关概念

    概念:功能 (包裹一部分代码 实现某一个功能 达成某一个目的) 特点:可以反复调用,提高代码的复用性,提高开发效率,便于维护管理 python中的函数可以像变量一样,动态创建,销毁,当参数传递,作为值返回,叫第一类对象.其他语言功能有限 函数名是个特殊的变量,可以当做变量赋值

    2024年02月02日
    浏览(70)
  • C++动态库编程 | C++名称改编、标准C接口、extern “C”、函数调用约定以及def文件详解

    目录 1、导入导出声明 2、C++函数名称改编与extern \\\"C\\\" 3、函数调用约定与跨语言调用 3.1、函数调用约定 3.2、跨语言调用dll库接口 3.3、函数调用约定以哪个为准 4、def文件的使用 5、在C++程序中引用ffmpeg库中的头文件链接报错问题 6、最后 VC++常用功能开发汇总(专栏文章列表,

    2024年02月11日
    浏览(34)
  • C++&Python&C# 三语言OpenCV从零开发(2):教程选择

    C++PythonCsharp in OpenCV OpenCV 有官方的教程和简单的视频教程: OpenCV 官方教程 B站也有相关的视频教学 OpenCV4 C++ 快速入门视频30讲 - 系列合集 OpenCV4 C++ 课程笔记 那么选择文本教程还是视频教程呢?我个人建议是 视频教程:零基础,一点都没有接触过 文本教程:有一定的基础,

    2024年01月21日
    浏览(48)
  • Python基础语法02:函数

    有些朋友基础比较薄弱,因此专门开发一套简单易学的Python基础教程: Python基础语法01:缩进规则 Python基础语法02:函数 Python基础语法03:类 Python基础语法04:顺序语句结构 Python基础语法05:条件和分支 Python基础语法06:循环 Python基础语法07:数据类型 Python基础语法08:内置

    2023年04月08日
    浏览(24)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包