我試圖讓這個節目給我的輸出看起來像這樣:的Python(v3)的麻煩輸出
Enter a number (-9999 to end): 4
Enter a number (-9999 to end): -3
Enter a number (-9999 to end): -15
Enter a number (-9999 to end): 0
Enter a number (-9999 to end): 10
Enter a number (-9999 to end): 22
Enter a number (-9999 to end): -9999
The list of all numbers entered is:
[4, -3, -15, 0, 10, 22]
The dictionary with averages is:
{'AvgPositive': 12.0, 'AvgNonPos': -6.0, 'AvgAllNum': 3.0}
這是我到目前爲止的代碼,但它沒有明顯的工作。任何幫助表示讚賞,但請在代碼中顯示。大多是我遇到了麻煩的底線 「與均線的字典是: { 'AvgPositive':12.0, 'AvgNonPos':-6.0, 'AvgAllNum':3.0}」
def nums():
values = []
while -9999 not in values:
x = int(input("Enter a number (-9999 to end:)"))
values.append(x)
values.remove(-9999)
return values
def allNumAvg(values):
average = 0
sum = 0
for n in values:
sum = sum + n
average = sum/len(values)
return average
def avgNonPos(values):
return allNumAvg([v for v in values if v<0])
if int in values < 0:
x.append(int)
print(x)
return average
def posNumAvg(values):
return allNumAvg([v for v in values if v>0])
if int in values > 0:
x.append(int)
print(x)
input(print("'AvgPositive': ",posNumAvg(nums())),"'AvgNonPos': ",avgNonPos(nums())),"'AvgAllNum': ",allNumAvg(nums())
什麼結果你好嗎? – 2015-02-24 06:00:46
它只是說:'AvgPositive':12.0我如何獲得它來打印nonPos和allNum的其他平均值? – PythonNoob 2015-02-24 06:05:30
每次調用'nums()'時,它都會要求你輸入一些數字。你在最後一行叫三次。 'print'的返回值是'None',然後傳遞給'input'函數。我認爲你可能會創建一個平均字典,然後打印出來。 – 2015-02-24 06:05:41