Python函数家庭作业帮助
一个功能是一个有组织,可重复使用的代码块,用于执行单个相关操作。功能为您的应用程序提供更好的模块化和高度的代码重用。你已经知道,Python给你很多内置的功能,如print()等等,但你也可以创建自己的功能。
什么是功能?
功能是将代码划分为有用的块的方便方法,允许我们订购代码,使其更易于阅读,重用并节省一些时间。函数也是定义接口的一个关键方法,因此程序员可以共享代码。
你如何在Python中编写函数?
正如我们在之前的教程中所看到的,Python使用了块。
其中块行更多的是Python代码(甚至是另一个块),并且块头具有以下格式:block_keyword block_name(argument1,argument2,…)阻止您已经知道的关键字是“if”,“for”和“而”。
python中的函数使用块关键字“def”定义,后面是函数的名称作为块的名称。
行使
在本练习中,您将使用现有的函数,并添加自己的函数来创建一个功能齐全的程序。
添加一个名为list_benefits()的函数,该函数返回以下字符串列表:“更有组织的代码”,“更易读的代码”,“更轻松的代码重用”,“允许程序员共享和连接代码”
添加一个名为build_sentence(info)的函数,该函数接收包含字符串的单个参数,并返回一个以给定字符串开始的句子,并以字符串结尾“是函数的好处!
运行并看到所有的功能一起工作!
函数定义的语法有几个部分要注意:
行1:标题包含def,函数的名称,括号和最后一个冒号。更一般的语法是
def function_name():
行2-5:剩余的行组成函数体,并以一致的数量缩进。 (确切的数量对于口译员而言并不重要,虽然2或4个空格是常见的约定。)
整个定义只是这样:定义名称happyBirthdayEmily的含义,但它还没有做任何其他的事情 – 例如,定义本身并没有打印出任何东西。这是我们从正常顺序顺序更改语句执行顺序的第一个例子。
括号会告诉Python执行命名函数,而不是仅仅参考该函数。 Python返回并查找定义,然后只执行函数定义中的代码。此操作的术语是函数调用或函数调用。
执行顺序与文本顺序不同:
行3-7:Python从顶部开始,读取并记住定义。定义在缩进结束的地方结束。 (该代码还显示了一条空白线,但这只是针对人类,强调定义的结束。)
第9行:这不是缩进任何定义,所以解释器直接执行它,调用happyBirthdayEmily(),同时记住在哪里返回。
线3-7:第一次执行功能代码,打印出歌曲。
第9行结束:从函数调用返回。继续
第10行:在记住这个位置的同时再次调用该函数。
线3-7:再次执行该功能,再次打印出歌曲。
第10行结束:从函数调用返回,但在这一点上程序中没有更多的东西,执行停止。
函数以多种方式改变执行顺序:在首先读取定义时,不执行语句,然后在执行期间调用函数时,跳转到函数代码,并返回到函数执行结束。
如果它也恰好是安德烈的生日,我们也可以定义一个函数happyBirthdayAndre。考虑如何做,然后再继续….
同样,除了最后两行之外,一切都是定义。它们是直接执行的唯一行。对函数的调用恰好与它们的定义相同,但这是任意的。如果最后两行交换,操作顺序将发生变化。交换最后两行,使其显示如下,并查看执行程序时会发生什么:
您编写的函数也可以调用您编写的其他函数。将程序的主要动作放在函数中以便于参考是一个很好的惯例。示例程序birthday5.py在最后一个函数main内有两个生日快乐电话。你看到这个版本和上一个版本完全一样吗?运行。 :
如果我们希望程序在运行时自动执行任何操作,我们需要在定义之外的一行!最后一行是唯一一个直接执行的代码,它调用主程序代码,后者又调用其他两个函数中的代码。
详细的执行顺序:
行3-17:读取和记住定义
第19行:定义之外的唯一语句是直接执行的。这个位置被记住为主要被执行。
第15行:从主开始
第16行。这个位置被记住为执行跳转到happyBirthdayEmily
第3-7行被执行,并且Emily被演唱。
返回到第16行:从happyBirthdayEmily函数调用返回
第17行:现在happyBirthdayAndre被称为这个位置被记住。
第9-13行:唱给安德烈
回到17行结尾:从happyBirthdayAndre函数调用回来,用main完成
回到第19行:从主回来;在程序结束时
与以前的版本有一个实际的区别。执行后,如果我们想给两个人再次发送生日快乐,我们只需要在壳牌中再进一步调用:
我们的专家Python程序员团队
Homeworkchina配备了一个专家和智能Python程序员和专家团队,熟悉其可能遇到的主题的每一个角落。这些专家拥有硕士或博士学位。这个在线Python家庭作业团队帮助专家使他们成为提供优秀写作和编程技能的服务提供商,帮助每个学生完成作业,作业或项目。