首页 > 解决方案 > 使用for循环编写一个输入列表的函数

问题描述

问题:

“编写一个程序,以汽车的英里/加仑和汽油美元/加仑(均为浮点数)作为输入,并输出 10 英里、50 英里和 400 英里的汽油成本。”

我知道有一种方法可以单独打印出来,但我相信应该有一个 for 循环来做到这一点,所以即使你输入更多的driven_miles,它也会从 for 循环中迭代,

谁能帮助我?谢谢你!

以下是我遇到问题的代码:

def driving_cost(a, miles_per_gallon, dollars_per_gallon):
    cost = a / miles_per_gallon * dollars_per_gallon
    return cost
    
if __name__ == '__main__':
    driven_miles = [10, 50, 400]
    miles_per_gallon = input()
    dollars_per_gallon = input()
    for i in range(len(driven_miles)):
        a = driven_miles[i]
        print(driving_cost(a, miles_per_gallon, dollars_per_gallon))

标签: pythonfunctionfor-loop

解决方案


就目前而言,成本是一个单一的价值。您可以将成本初始化为一个空列表,并将每个单独的成本附加到它,最后返回它

def driving_cost(driven_miles, miles_per_gallon, dollars_per_gallon):
    cost = []
    for miles in driven_miles:
        cost.append((miles / miles_per_gallon) * dollars_per_gallon)

    return cost

推荐阅读