首页 > 编程语言 >Python中定义(创建)、调用函数及返回值

Python中定义(创建)、调用函数及返回值

时间:2024-08-03 16:40:45浏览次数:13  
标签:函数 Python sum 调用函数 score1 返回值 定义

1.定义(创建)函数

要调用一个函数,首先要定义它。在Python中使用关键字def来定义一个函数。
函数通常由函数名、参数列表以及一系列语句组成的函数体构成的。函数定义的一般格式如下:

def 函数名(参数列表):

    函数体

例如:

def sayhello():

	print('hello')

最简单的函数:

def myfun():

	pass

上面的函数是在Python中定义的最简单的函数,虽然没有实际作用,但是它符合Python定义函数的规则。

包括:

  • def关键字
  • 函数名:myfun,函数名的命名需满足Python中标识符的命名规范。
  • 包含参数的括号(必须是英文括号):这个函数没有参数
  • 冒号(必须是英文冒号):这也是Python函数定义时必不可少的部分
  • 函数体:pass表示什么也不做,但是可以用来占位。函数体必须进行缩进。

一个比较完整的函数定义如下:

函数参数及函数返回我们将在后续的内容中进行学习。
示例1:算学生总分

def sum_score1():

    print(f'学生的总成绩为:{80 + 95 + 60}')

如果一个学生的语文、数学、英语分别为80、95、60分,那么通过上面示例1中的函数sum_score1就可以求出该学生的总成绩了。

2 调用函数

在定义函数之后,如果不对该函数进行调用,那么该函数不会起作用。也就不能达到我们想要的结果了。所以我们一般在定义函数之后,紧接着就要在合适的地方对刚才定义的函数进行调用。
调用函数的方法也非常简单,比如我们要调用上面示例1中的函数sum_score1,调用的方法如下:

sum_score1()
#输出
学生的总成绩为:235

在调用函数后,代码的运行就会跳转到调用的函数中,按照顺序依次运行函数体内所有的代码。
注意:
1、对于自定义函数,一定要先定义,才能调用函数,否则在调用函数时会报错:

Traceback (most recent call last):
File "D:\Py\test.py", line 9, in
sum_score()
NameError: name 'sum_score1' is not defined

2、调用函数时必须在函数名后添加英文的括号,否则不能正常调用函数:

sum_score1
print(sum_score1)

print(sum_score1())
#输出
<function sum_score1 at 0x000001FEFB0BCB80>
学生的总成绩为:235
None

3 函数返回值

在上面,如果我们print(sum_score1())会先执行函数,得到结果:学生的总成绩为:235,然后还会得到该函数的返回值:None。

函数可以有返回值,就是调用函数后获取到的值,函数可以同时返回多个值。此时多个返回值会自动合并成一个元组类型。一般用return作为函数返回值的关键字。

每个函数一旦执行到return后就会立刻返回结果并停止执行后面的代码。
如果函数体中没有return关键字,则函数的返回值默认为None。

注意:
在编写函数时,最好在遇到特殊情况时,尤其是报错时,应该抛出异常,而不是返回None,比如除法分子为0的情况,这样有助于发现异常并修正。

示例:算学生总分并返回

def sum_score2():
    sum_score = 80 + 95 + 60
    print(f'学生的总成绩为:{sum_score}')
    return sum_score
 
 
sumScore = sum_score2()

print(sumScore)
#小编创建了一个Python学习交流群:531509025
#输出
学生的总成绩为:235
235

上面我们通过关键字return返回了总成绩sum_score,接下来在调用时用变量 sumScore接收了函数sum_score2的返回值,并打印出来。
如果函数返回了多个值,可以通过多个变量进行接收。如果只用一个变量接收返回多个值的函数的值,则默认为元组,元组中的元素为函数返回的多个值。

标签:函数,Python,sum,调用函数,score1,返回值,定义
From: https://www.cnblogs.com/xxpythonxx/p/18340698

相关文章

  • python用List的内建函数list.sort进行排序
    对List进行排序,Python提供了两个方法方法1用List的内建函数listsort进行排序listsort(func=None,key=None,reverse=False)Python实对List进行排序,Python提供了两个方法方法1.用List的内建函数list.sort进行排序list.sort(func=None,key=None,reverse=False)>>>list=......
  • 【JS】自调用函数怎么用?
    自调用函数定义自调用函数,也称为立即执行函数表达式(IIFE),是一种在定义后立即执行的函数(也就是说不用另外调用执行了)。它的主要目的是创建一个新的作用域,避免全局变量的污染。优势可以立即执行,不需要等待其他代码的执行。创建了新的作用域,可以保护内部的变量和函数不被外部......
  • 禁用 GIL 的 Python 3.13 非常慢
    我对python3.12.0与使用3.13.0b3标志编译的python--disable-gil进行了简单的性能测试。该程序使用ThreadPoolExecutor或ProcessPoolExecutor执行斐波那契数列的计算。引入禁用GIL的PEP文档表示,存在一些开销,主要是由于有偏差......
  • 有没有办法阻止 setUp() 为 python 测试用例中的每个测试方法启动浏览器?
    我正在练习编写Web自动化测试用例,并且编写了一些函数来测试登录、在用户主页中查找我的用户名以及测试GitHub的注销功能。然而,我通过经验和阅读了解到setUp()是在每个测试方法之前启动的,而我的问题是在每个测试方法之前它都会打开一个新的浏览器。我希望我的所有测......
  • 尝试使用Python抓取需要先登录的网站但没有成功
    我正在尝试抓取一个需要登录的网站(我的路由器GUI),但无论我做了什么,我都会反复返回登录站点的源代码,而不是成功登录后出现的页面。我做了一些阅读,并意识到我需要返回POST请求的答案。我想我找到了它们并返回了所需的值,但仍然-似乎没有任何效果。我使用https://curl.tri......
  • 给python初学者的一些建议
    写在开篇关于Python,可以这么说,这几年借着数据科学、机器学习与人工智能的东风,Python老树开新花,在风口浪尖上居高不下。Python之所以这么受大家的青睐,是因为它语言简洁,上手容易,让非计算机专业的人员也能快速上手,享受编程开发带来的便利和福利。但Python再简单,它也是一......
  • Python中15个递归函数经典案例解析
    1.阶乘计算阶乘是一个常见的递归应用,定义为n!=n*(n-1)*…*1。deffactorial(n):ifn==0:return1else:returnn*factorial(n-1)print(factorial(5))#输出:1202.斐波那契数列斐波那契数列的每一项都......
  • 如何使用 python (使用服务帐户)在应用程序脚本 Web 应用程序上触发 doGet()?
    我想从返回json的应用程序脚本Web应用程序触发doGet(e)事件。我们的网络应用程序无法在我们的组织域之外访问,因此需要服务帐户。我执行了下面的代码,但“发生错误:401客户端错误”fromgoogle.oauth2importservice_accountfromgoogle.auth.transport.requestsimpor......
  • 如何使用 BeautifulSoup python 查找选择标签的选定选项值
    我正在尝试从python中的htmlselect标签获取选定的值。好吧,当选项属性设置为selected="selected"时,它是成功的,但我试图废弃的网站具有不同的选项属性,例如:-html="""<select><optionvalue="">Pleaseselectavlalue</option><o......
  • 12:Python元组属性
    #元组tuple,元素不可被修改,不能被增加或则删除tu=(111,'alex',(11,22),[(33,44)],True,33,44,)#一般写元组的时候,最后可以加个逗号不报错print(tu)tu=(111,'alex',(11,22),[(33,44)],True,33,44,)v=tu[0]#元组索引print(v)tu=(111,'alex',(11,2......