“助手功能”的作用?

时间:2017-03-16 14:47:58

标签: python function

我不是在寻求这项任务的帮助。我已经完成了前三部分;我只是在这里发布整个问题以帮助澄清它。我只对第4部分感到困惑(下面写着);我不确定它的要求是什么,我想知道是否有人可以解释“辅助功能”的含义,以及我应该撰写的内容。谢谢。

录取标准基于SAT三个部分的分数,并在高中毕业班中排名;确切的标准如下。这些规则适用于此处显示的优先顺序(1,2,3等)。

如果输入数据无效(SAT小于200或大于800,或类级别不是正整数),则拒绝输入数据 如果任何测试分数为800,则接受它们 如果任何考试成绩低于300,他们将被拒绝 如果平均测试分数大于650并且班级等级小于或等于25,则接受它们 如果两个或多个考试成绩小于400或者班级等级大于或等于75,则拒绝这些成绩 在任何其他情况下,申请人被列入候补名单 Da程序替换电子表格(具有多个功能)以确定学生是否将被接受,拒绝或等待列出。您的解决方案必须包含以下功能:

第1部分:

一个名为admissionStatus(sat_math,sat_reading,sat_writing,class_rank)的函数,它接受4个参数(如图所示)并返回一个字符串“Accept”,“Reject”或“Waitlist”

第2部分:

一个名为isvalid(sat_math,sat_reading,sat_writing,class_rank)的函数,它返回True或False,具体取决于输入数据是否有效。如果所有数据都有效,则返回True,否则返回False。 

第3部分:

一个主要功能,提示用户提供相关数据(申请人姓名,数学成绩,阅读成绩,写满分数和班级等级。它还调用admissionStatus()传递适当的参数.

第4部分:

您认为合适的任何其他帮助函数(在准入状态下实现某些计算作为可以从准入状态调用的单独函数。例如,您可能希望为上面的规则2编写函数。)

再次 - 我只询问第4部分。我应该为每个标准编写一个函数吗?我真的不确定。

3 个答案:

答案 0 :(得分:4)

“辅助函数”是您编写的函数,因为您需要在多个位置使用该特定功能,并且因为它使代码更具可读性。
一个很好的例子是平均函数。您将编写一个名为avg或类似的函数,它接收一个数字列表,并返回该列表中的平均值。
然后,您可以在主函数中使用该函数,或者在您需要的任何地方使用其他更复杂的帮助函数。基本上,您多次使用的任何代码块都可以成为辅助函数 辅助函数的另一个原因是使代码更容易阅读。例如,我可能能够编写一个非常聪明的代码行来获取数字列表的平均值,它只需要一行,但它很复杂且难以阅读。我可以创建一个辅助函数,并用一个更容易阅读的复杂行替换。

答案 1 :(得分:3)

A helper function is a function that performs part of the computation of another function - 来自谷歌

def add(a,b):
    return a+b

def main():
    subtract = 10 - 9
    multiply = 2 * 2
    add(5,4) <-- this here, is a helper function.

&#34;添加(5,4)&#34;是一个辅助函数。您已经定义了add(a,b)这是函数。现在您可以根据需要随时使用该添加功能,无论您喜欢什么,它都会为您添加两个整数。

所以添加功能是&#34;帮助&#34;您可以随时随地添加两个整数,无论​​何时何地。

希望有所帮助。

答案 2 :(得分:0)

这意味着您可以创建可帮助您完成项目的其他功能。

通常,作业或测试会为您提供特定的功能签名。这可能意味着您只能在该功能中编码来解决问题。

通过指定您允许使用帮助程序功能,它说您不仅限于一个功能。您可以在指定的函数中创建要调用的其他函数。

更具针对您的情况:您的作业要求您完成以下功能:

  • admissionStatus(sat_math,sat_reading,sat_writing,class_rank)
  • isValid(sat_math,sat_reading,sat_writing,class_rank)
  • 主要功能

然后,作业说:

  

在准入状态下实施一些计算,作为可以从准入状态调用的单独功能。

那里有哪些计算?计算平均测试分数,比方说。 Python的标准库不包含用于计算平均值的预先编写的函数。所以,你编写自己的函数来做到这一点。

来自Calculating arithmetic mean (average) in Python

def mean(numbers):
    return float(sum(numbers)) / max(len(numbers), 1)

将成为&#34;帮助函数的一个例子&#34;。