0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Python函数详解

网络技术干货圈 来源:网络技术干货圈 2023-04-19 15:47 次阅读

Python 中,函数是一段可重复使用的代码块,可以接受一些输入(即函数参数),并根据输入执行某些操作。函数可以帮助我们组织代码、减少重复代码、实现模块化设计,并提高代码的可读性和可维护性。

0d3613e2-de85-11ed-bfe3-dac502259ad0.png

定义函数

在 Python 中,可以使用 def 关键字来定义函数,其语法如下:

deffunction_name(parameter1,parameter2,...):
"""函数文档字符串"""
#函数体代码
returnreturn_value

function_name 是函数的名称,应该具有描述性并符合 Python 的命名规范;

parameter1, parameter2, ... 是函数的参数列表,用于接收函数调用时传递的值;

函数文档字符串(也称为 docstring)是可选的,用于描述函数的用途和功能;

函数体代码包含一系列语句,用于执行某些操作;

return 语句用于从函数中返回一个值。

以下是一个简单的函数示例:

defgreet(name):
"""向指定的人打招呼"""
print("Hello,"+name+"!")

在上面的示例中,greet 函数接受一个参数 name,并打印一个简单的问候语句。

调用函数

定义好函数后,就可以在程序中调用它了。函数调用时,可以传递参数,也可以不传递参数。以下是一个调用 greet 函数的示例:

greet("Alice")#输出"Hello,Alice!"
greet("Bob")#输出"Hello,Bob!"

在上面的示例中,我们分别向 greet 函数传递了两个参数:"Alice" 和 "Bob"。函数执行时会将这两个参数的值分别传递给函数的 name 参数,并打印相应的问候语句。

函数返回值

在 Python 中,函数可以返回一个值,这个值可以是任意数据类型。使用 return 语句可以从函数中返回一个值。以下是一个简单的函数示例,它接受两个参数并返回它们的和:

defadd_numbers(x,y):
"""返回两个数字的和"""
returnx+y

在上面的示例中,add_numbers 函数接受两个参数 x 和 y,并返回它们的和。

可以将函数的返回值存储在一个变量中,以便在程序的其他部分使用。以下是一个调用 add_numbers 函数并存储返回值的示例:

result=add_numbers(3,5)
print(result)#输出8

在上面的示例中,add_numbers 函数返回两个数字的和,并将该和存储在 result 变量中,然后使用 print 函数打印

函数参数

在 Python 中,函数可以接受多个参数,参数可以有默认值,也可以通过位置或关键字来传递。以下是一个接受多个参数的函数示例:

defprint_numbers(*numbers):
"""打印指定的数字"""
fornumberinnumbers:
print(number)

在上面的示例中,print_numbers 函数使用 * 运算符来接受任意数量的参数,并使用 for 循环遍历所有参数并打印它们。

可以通过位置或关键字参数来调用 print_numbers 函数。以下是一些示例:

print_numbers(1,2,3)#输出123
print_numbers(4,5,6,7,8)#输出45678
print_numbers(*[9,10,11])#输出91011

在上面的示例中,第一行调用了 print_numbers 函数并传递了三个位置参数 1、2 和 3。第二行调用了 print_numbers 函数并传递了五个位置参数 4、5、6、7 和 8。第三行调用了 print_numbers 函数并使用 * 运算符将一个列表 [9, 10, 11] 转换为多个位置参数,然后将它们传递给函数。

另外,函数还可以接受带有默认值的参数。以下是一个示例:

defgreet(name,greeting="Hello"):
"""向指定的人打招呼"""
print(greeting+","+name+"!")

在上面的示例中,greet 函数接受两个参数 name 和 greeting,其中 greeting 参数具有默认值 "Hello"。如果调用 greet 函数时不指定 greeting 参数,函数将使用默认值 "Hello"。

可以使用位置或关键字参数来调用 greet 函数,并可以选择是否指定 greeting 参数。以下是一些示例:

greet("Alice")#输出"Hello,Alice!"
greet("Bob","Hi")#输出"Hi,Bob!"
greet(name="Charlie")#输出"Hello,Charlie!"
greet(greeting="Hi",name="Dave")#输出"Hi,Dave!"

在上面的示例中,第一行调用了 greet 函数并传递了一个位置参数 "Alice",函数将使用默认值 "Hello"。第二行调用了 greet 函数并传递了两个位置参数 "Bob" 和 "Hi",函数将使用传递的 greeting 参数。第三行调用了 greet 函数并传递了一个关键字参数 name="Charlie",函数将使用默认值 "Hello"。第四行调用了 greet 函数并传递了两个关键字参数 greeting="Hi" 和 name="Dave"

匿名函数

在 Python 中,可以使用 lambda 关键字定义匿名函数。匿名函数是一种没有名称的函数,通常用于简单的计算或过滤任务。以下是一个示例:

double=lambdax:x*2
print(double(5))#输出10

在上面的示例中,lambda 关键字定义了一个匿名函数,它将传递的参数乘以 2 并返回结果。然后,我们将 double 变量设置为这个匿名函数,并调用它以打印结果。

作用域

在 Python 中,变量有作用域。如果变量在函数内部定义,它们通常只在函数内部可见。如果变量在函数外部定义,它们可以在函数内部和外部使用。以下是一个示例:

x=10#在函数外部定义变量x

defprint_x():
"""打印变量x"""
print(x)#可以在函数内部使用变量x

print_x()#输出10

在上面的示例中,我们定义了一个全局变量 x,然后在函数 print_x 中打印了这个变量。由于 x 是在函数外部定义的,因此它可以在函数内部和外部使用。

如果在函数内部重新定义一个与全局变量同名的变量,则该变量将成为一个局部变量,并且将遮蔽全局变量。以下是一个示例:

x=10#在函数外部定义变量x

defprint_x():
"""打印变量x"""
x=5#在函数内部重新定义变量x
print(x)#输出5

print_x()#输出5
print(x)#输出10,因为全局变量x没有被改变

在上面的示例中,我们在函数内部重新定义了一个名为 x 的变量。在函数内部,该变量将遮蔽全局变量 x,因此在函数内部打印该变量的值将输出 5。在函数外部打印 x 的值将输出全局变量的值 10,因为全局变量没有被改变。

结论

Python 函数是组织和重用代码的有用工具。函数允许我们将代码块打包到可重用的块中,并将其传递给其他代码。在本教程中,我们讨论了 Python 函数的基础知识,包括如何定义函数、函数的参数、作用域以及匿名函数。通过掌握这些概念,您可以编写更高效、更易于维护的 Python 代码。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 字符串
    +关注

    关注

    1

    文章

    567

    浏览量

    20456
  • 函数
    +关注

    关注

    3

    文章

    4273

    浏览量

    62290
  • 代码
    +关注

    关注

    30

    文章

    4708

    浏览量

    68175
  • python
    +关注

    关注

    54

    文章

    4763

    浏览量

    84338
  • 调用函数
    +关注

    关注

    0

    文章

    11

    浏览量

    2293
收藏 人收藏

    评论

    相关推荐

    一文详解python调用函数

    函数被定义后,本身是不会自动执行的,只有在被调用后,函数才会被执行,得到相应的结果。但是在 Python 中我们要注意一个关键点,就是Python不允许前向引用,即在
    发表于 10-01 10:45 587次阅读

    PICC库函数详解

    PICC库函数详解
    发表于 04-18 20:13 132次下载

    完全自学指南Python爬虫BeautifulSoup详解

    完全自学指南Python爬虫BeautifulSoup详解
    发表于 09-07 08:55 39次下载
    完全自学指南<b class='flag-5'>Python</b>爬虫BeautifulSoup<b class='flag-5'>详解</b>

    Python的Matplotlib函数汇总

    本文档的主要内容详细介绍的是Python的Matplotlib函数汇总免费下载。
    发表于 12-17 08:00 2次下载

    python经典实例详解

    python经典实例详解说明。
    发表于 04-26 10:14 32次下载

    python提供的68个内置函数详解

      内置函数就是Python给你提供的,拿来直接用的函数,比如print.,input等。 截止到python版本3.6.2 ,python
    的头像 发表于 10-27 09:14 2150次阅读

    python高阶函数详解

    python高阶函数 1. map 函数 map 函数,它接收两个参数,第一个参数是一个函数对象(当然也可以是一个lambda表达式),第二
    的头像 发表于 03-02 16:47 1252次阅读
    <b class='flag-5'>python</b>高阶<b class='flag-5'>函数</b><b class='flag-5'>详解</b>

    python函数和泛型函数详解

    python函数 假如一个函数定义了多个位置参数,那你每次调用时,都需要把这些个参数一个一个地传递进去。 比如下面这个函数,是用来计算 x的n次方 的。 def power(x, n
    的头像 发表于 03-03 16:43 1721次阅读

    Python入门之什么是函数

    Python函数比我们想象的更为灵活。由于Python函数是对象,所以函数对象可以赋值给其他的名字、传递给其他
    的头像 发表于 02-21 14:24 465次阅读

    python常用的内置函数和模块

    python数字包含常用的内置函数和模块,比如pow()、abs()、floor()、int()等函数,以及math、random等模块。
    的头像 发表于 03-10 10:10 888次阅读

    [源代码]Python算法详解

    [源代码]Python算法详解[源代码]Python算法详解
    发表于 06-06 17:50 0次下载

    为什么Python没有main函数

    今天的文章中,我们来讨论一下为什么有的编程语言有main函数,而Python为什么没有main函数
    发表于 08-17 11:47 294次阅读

    python调用math函数的方法

    Python编程中,数学函数是非常重要的工具,我们可以使用它们进行各种数值计算、几何运算和统计分析等操作。Python的标准库中内置了很多数学函数,而其中最基本和常用的数学
    的头像 发表于 11-22 11:01 2607次阅读

    不属于python的内置函数

    Python是一种高级编程语言,它提供了许多内置函数,可以帮助开发人员更轻松地处理各种任务。但是,在Python中并非所有的函数都是内置函数
    的头像 发表于 11-29 14:27 1317次阅读

    python中open函数的用法详解

    python中open函数的用法详解 Python中的open()函数用于打开文件。它接受文件名和模式作为参数,并返回一个文件对象。文件对象
    的头像 发表于 01-30 15:31 1857次阅读