Python初学者问题:如何从这组数据中获取范围(包括问题和尝试)

2024-09-30 12:29:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习一门初学者课程,我正在努力找出我在这个问题上的错误。 我已经搜索并找到了一个类似的线索,但我仍然不能得到正确的答案

问题3 世卫组织向您提供了各国结核病死亡的数据,包括:

Population by country
Country         Deaths from TB
South Africa    25 000
Mozambique      18 000
Angola          6 900
Equatorial Guinea   67
Guinea-Bissau   1 200

我们为您提供了一个名为RangeofDeath的部分完成的Python函数来计算死亡范围,该函数应返回5个非洲国家的死亡范围

每个国家的这些死亡已经被分配给变量:deathsInSAdeathsInMdeathsInAdeathsInEGdeathsInGB

添加结果所需的额外代码行,以保持最大和最小死亡人数之间的差异。这应该是一个正数

您应该在代码中使用本周学习的Python函数

提示1:您需要在此函数中使用局部变量

提示2:确保代码缩进正确,否则将无法运行

def rangeOfDeaths():
    deathsInSA = 25000
    deathsInM = 18000
    deathsInA = 6900
    deathsInEG = 67
    deathsInGB = 1200

    return result

def rangeOfDeaths(deathsInSA, deathsInM, deathsInA, deathsInEG, deathsInGB):
    deathsInSA = 25000
    deathsInM = 18000
    deathsInA = 6900
    deathsInEG = 67
    deathsInGB = 1200
    largest = max(deathsInSA, deathsInM, deathsInA, deathsInEG, deathsInGB)
    smallest = min(deathsInSA, deathsInM, deathsInA, deathsInEG, deathsInGB)
    result = (largest - smallest)
    return result

Feedback
Expected    Got 
24933
***Error***
Traceback (most recent call last):
  File "__tester__.python3", line 39, in <module>
    print(rangeOfDeaths())
TypeError: rangeOfDeaths() missing 5 required positional arguments: 'deathsInSA', 'deathsInM', 'deathsInA', 'deathsInEG', and 'deathsInGB'
Your code must pass all tests to earn any marks. Try again.

Tags: 函数代码returndefresult国家largestsmallest
2条回答

我自己刚刚完成了这个问题(并且在互联网上进行了大量挖掘之后),我提出了以下解决方案:

def rangeOfDeath():
    deathsInSA = 25000
    deathsInM = 18000
    deathsInA = 6900
    deathsInEG = 67
    deathsInGB = 1200
    
    maxD = max(deathsInSA, deathsInM, deathsInA, deathsInEG, deathsInGB)
    minD = min(deathsInSA, deathsInM, deathsInA, deathsInEG, deathsInGB)
    result = maxD - minD
    
    return result

rangeOfDeath()

在def rangeOfDeath():模块中执行所有计算,然后从模块外部调用该模块

只需调用函数rangeOfDeath()并从中返回结果。无需向函数中添加参数。如果您添加了参数,那么您也必须传递它们才能调用这里不需要的函数

相关问题 更多 >

    热门问题