使用范围功能

时间:2012-11-26 22:58:02

标签: python range

我的目标是创建一个接受输入(Battery_Capacity)的程序,并最终吐出一个(New_Battery_Capacity)列表和它最终达到最大容量80所需的(循环次数)。

Cycle = range (160)
Charger_Rate = 0.5 * Cycle
Battery_Capacity = float(raw_input("Enter Current Capacity:"))
New_Battery_Capacity = Battery_Capacity + Charger_Rate

if Battery_Capacity < 0:
    print 'Battery Reading Malfunction (Negative Reading)'

elif Battery_Capacity > 80:
    print 'Battery Reading Malfunction (Overcharged)'

elif float(Battery_Capacity) % 0.5 !=0:
    print 'Battery Malfunction (Charges Only 0.5 Interval)'

while Battery_Capacity >= 0 and Battery_Capacity < 80:
    print New_Battery_Capacity 

我想知道为什么我的Cycle = range(160)在我的程序中不起作用?

1 个答案:

答案 0 :(得分:0)

您的第一个问题是前两行的顺序错误。在使用它之前,您需要一个“Cycle”变量才能存在。

但是,交换它们时仍会出现错误。您不能将列表乘以浮点数。列表理解更符合您的要求:

Charger_Rate = [i * .5 for i in Cycle]

据我所知,range(160)部分没问题。