【发布时间】:2012-11-24 03:43:00
【问题描述】:
我想将整数存储为 Rate、Remaining、Battery 和 kWh。请帮助修改它,以便我可以存储变量并在代码底部执行方程式。
Rate = 0
while (Rate < 0.5) or (Rate > 2.0):
Rate = int(raw_input("Enter Desired Rate of Charge: ")) #User will be prompted to enter the charge rate of the system
if Rate < 0.5:
#If the charge rate entered is less than 0.5 kWhs
print "Charge Rate Too Low: Please consider revision" #Tells the user the rate is too low
elif Rate > 2.0:
#Also, if the charge rate entered is greater than 2.0 kWhs...
print "Charge Rate Too High: Please consider revision" #Tells the user the rate is too high
else:
#Otherwise, for any number entered between the bounds of 0.5 and 2.0 kWhs...
print '\n' #Page break for new conditions.
import random
Remaining = random.randint(0, 80) #Simulates remaining charge left over from the last use of the car. Defines the variable as "Remaining"
Battery = 0
while (Battery <=0) or (Battery >=80):
Battery = int(raw_input("Enter Current Battery Life: "))
#User will be prompted to enter the current battery level of the car. Defines that variable as "Battery"
if Battery < 0:
#If user input level is less than 0 kWh...
print "Insufficient Entry (Too Low): Please consider revision" # Tells the user that the battery level entered is too low
elif Battery > 80:
#Also, if the user input level is greater than 80 kWh...
print "Insufficient Entry (Too High): Please consider revision" # Tells the user that the battery level entered is too high
kWh = 80 - Battery - Remaining
print '\n' #Page break
if kWh <=0:
print "Battery Fully Charged!"
print "There were " Remaining, " kWhs remaing from the last charge. 0 kWhs were charged."
print "Buckle up! The rewards of the journey far outweigh the risk of leaving the garage!"
else:
print "Battery Fully Charged!"
print "There were " Remaining, " kWhs remaing from the last charge. " kWh, "kWhs were added to recharge battery."
print "Buckle up! The rewards of the journey far outweigh the risk of leaving the garage!"
【问题讨论】:
-
这与您的问题几乎无关,而只是一般性评论:您不需要编写对于阅读代码的人来说完全多余的 cmets。仅评论以解释不明显的事情。例如,您不需要在进行
< 0检查之后说“如果用户级别小于 0”,因为它们的含义完全相同。相反,您可能想说为什么零是应该测试的边界。对于像print这样的声明,很少需要评论,因为打印的文本是它自己的文档。 -
充电率不以千瓦时表示。 kWh 是储存的能量。速率是一个数量除以时间,所以你得到的是 (k)W 作为速率。顺便说一句,
Rate在哪里使用? -
另一件事:根据PEP 8,你应该用小写写你的变量名:
battery,rate,remaining。并考虑将kWh重命名为added或类似名称:几乎所有值都以千瓦时为单位...