编写程序以跟踪您的利润。你每个苹果赚0.25美元,每个橙子0.50美元,每个香蕉0.75美元,每个草莓0.35美元。返回表示水果利润的整数。
这就是我所做的,我收到的错误是:不能将序列乘以'浮动'类型的非int
def sellFruits(fruits):
fruitL = []
a = [0] * .25
o = [1] * .50
b = [2] * .75
s = [3] * .35
totalFruitProfit = a + o + b + s
return totalFruitProfit
测试用例:
fruits = [1, 1, 1, 1]
profit = sellFruits(fruits)
print profit
1.85
答案 0 :(得分:2)
我认为您正在寻找的是:
def sellFruits(fruits):
a = fruits[0] * .25
o = fruits[1] * .50
b = fruits[2] * .75
s = fruits[3] * .35
totalFruitProfit = a + o + b + s
return totalFruitProfit
你正在做的一些事情没有多大意义:
fruits
参数fruitL = []
,然后无所事事[0] * .25
正在创建一个列表,其中包含一个项目(整数0),并尝试将该序列 1 乘以.25。如果你试图索引一些列表,那就不会发生。所以我在每组括号前添加了fruits
。这样,您就会访问传递给0
的{{1}}列表的1
,fruits
等项目。
请注意我改变的内容:
sellFruits
创建一个列表,其中包含一个项[0]
。0
访问列表中的第一项(或任何序列,元组,...)fruits[0]
。 1 - 将序列乘以整数会多次复制序列。例如,fruits
会产生[0] * 4
。