簡體   English   中英

While循環在Python中不起作用

[英]While loop is not working in Python

該程序將允許我輸入值,但它們不是計算值,也不會打印。 我已經將endProgram輸入全部移開,它只是將其變成無限循環。

def main ():
 endProgram = "no"
 while endProgram == "no":
        totalBottles = getBottles()
        totalPayout = calcPayout(totalBottles)
        printInfo = (totalBottles, totalPayout)
        endProgram = raw_input("Do you want to end the program? Enter yes or no:") 

def getBottles():
    counter = 1
    totalBottles = 0
    todayBottles = 0

    while counter <= 7:
        todayBottles = input("Enter number of bottles for today:")
        totalBottles = totalBottles + todayBottles
        counter = counter + 1
    return totalBottles

def calcPayout(totalBottles):
    totalPayout = 0
    totalPayout = totalBottles * .10
    return totalPayout
def printInfo(totalBottles,totalPayout):
    print "The total bottles collected is:",totalBottles
    print "The total payout is $ :",totalPayout

要打印,您必須在行中刪除= (因為它將值分配給變量)

 printInfo = (totalBottles, totalPayout)

它一定要是:

 printInfo(totalBottles, totalPayout)

這樣,您可以通過變量調用函數。

您正在將一個元組 (totalBottles,totalPayout)分配給一個函數,這就是為什么不起作用的原因。

printInfo是一個僅打印而沒有返回值的函數因此請更改語句

printInfo = (totalBottles, totalPayout)

用於printInfo(totalBottles, totalPayout)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM