【发布时间】:2015-08-30 05:31:43
【问题描述】:
我一直在努力
<__main__.Camera object at 0x02C08790>
我不知道为什么。
我希望代码从 Calc_Speed 转到 Counter,然后基本上循环返回 Calc_Speed。
class Camera():
distance = 2
speed_limit = 20
number_of_cars = 0
def Calc_Speed(self):
registration = input("Registration Plate: ")
Speeding_List=[]
start = float(input("Start time: "))
end = float(input("End Time: "))
speed = self.distance/(end-start)
print(("Average Speed: ") + str(round(speed, 2)) + (" mph"))
if speed > self.speed_limit:
list3= [str(self.registration)]
Speeding_List.append(list3)
print("Vehicles Caught Speeding: " + str(Speeding_List))
return(program.Counter())
else:
print("Vehicle Not Speeding")
return(program.Counter())
def Counter():
self.number_of_cars = self.number_of_cars + 1
print("Number Of Cars Recorded: " + str(self.number_of_cars))
return(program.Calc_Speed())
program = Camera()
print(program)
【问题讨论】:
-
你打印一个
Speed_Camera对象。你期待什么? -
您的代码有缩进错误,并且没有定义任何名为
Speed_Camera的内容。另外,你从来没有说过你想让程序做什么,所以没有人能告诉你如何让它做你想做的。 -
@BrenBarn。我将类的名称从 Speed_Camera 更改为 Camera,而没有更改其余代码。哎呀!对不起:)
-
打印该字符串的原因是因为您正在创建一个类的实例并对其进行打印,但是当您在其上使用
print时,该类本身并未定义应返回的内容。你的类中的函数也没有被调用。 -
@JamesKent 所以如果我输入类似“print (program.Calc_Speed()) i”的东西会起作用吗?
标签: python python-3.x