現在、私のCS125コースのプロジェクトに問題があります。このプロジェクトの前提は、どれくらい多くのカボチャの重量があるかをユーザに尋ねるプログラムを書いてから、多くのカボチャの重みを読み取って、それぞれの重量をコメント重、標準、または光で印刷することです。プログラムは、重みを平均し、小数点以下3桁で表示する必要があります。プログラムの焦点は、ただ一つの主要な機能ではなく、複数の機能を使用することです。これは問題が発生し始めたところです。私はこのプログラムをちょうど完了したと信じていますが、終わり近くに名前の誤りがあります。ここでのコードは、これまでのところです:名前エラーパンプキンプロジェクト
# File: weights.py
# Date: 10/25/2017
# Author: Marcus Kassab
# Purpose: Print the average weight of a given number of pumpkins
def intro():
print()
print("Program to calculate the average of a")
print("group of pumpkin weights.")
print("You will be asked to enter the number of")
print("pumpkins, followed by each pumpkin weight.")
print("Written by Marcus Kassab.")
print()
def getPumpkins():
numPumpkins = int(input("Enter the number of pumpkins: "))
print() #for turnin
#print()
totalWeight = 0
count = 0
for pumpkins in range(numPumpkins):
count = count + 1
pumpkinWeight = int(input("Enter the weight for pumpkin " + str(count) +": "))
#print() #for turnin
totalWeight = totalWeight + pumpkinWeight
if pumpkinWeight >= 70:
print("{0:0.3f}".format(pumpkinWeight), "is heavy.")
elif pumpkinWeight >= 50 and pumpkinWeight < 70:
print("{0:0.3f}".format(pumpkinWeight), "is normal.")
else:
print("{0:0.3f}".format(pumpkinWeight), "is light.")
return numPumpkins, totalWeight
def calcAverage(totalWeight, numPumpkins):
avg = float(totalWeight)/float(numPumpkins)
print("The average weight of the", numPumpkins, "pumpkins is, "{0:0.3f}".format(avg))
def main():
intro()
getPumpkins()
calcAverage(totalWeight, numPumpkins)
main()
私はプログラムを実行すると、それは私が次のエラーを取得するcalcAverage、に到達するまで、それは罰金に動作します:
Traceback (most recent call last):
File "/Users/marcuskassab/Documents/Courses 2017-18/CS 125/Projects/weights.py", line 45, in <module>
main()
File "/Users/marcuskassab/Documents/Courses 2017-18/CS 125/Projects/weights.py", line 43, in main
calcAverage(totalWeight, numPumpkins)
NameError: name 'totalWeight' is not defined
私がどこか分かりませんgetPumpkins()のtotalWeightを定義することが効果的だと思っていたので、エラーがあります。しかし、calcAverageのどこかでは動作していないようです。このエラーの援助は非常に高く評価されます!
numPumpkins、totalWeight = getPumpkins()関数の戻り値を取得してください。 – davedwards