2016-02-11 61 views
0

我使用python 3空闲,它没有突出显示任何东西来告诉我什么语法错误。提到它在第九行,但我看不到它。当运行我的应用程序时,保持得到'SyntaxError:意外的EOF,而解析'当我运行我的应用程序,不知道为什么

下面的代码,它是一个“速度检查”

import time#python module with time related functions 

file = open('speeders.txt', 'r') 
speeders = file.read() 
print (speeders) #prints out list of speeding cars 

reg_plate = int(input("Please enter the car's registration plate"))#registration plate 
speed_limit = int(input("Please enter your speed limit in mph"))#assigns speed limit 
input("Press enter when the car passes the first sensor")#assign values to the end and start time variables 
start_time = time.time() 
input("Press enter when the car passes the second sensor") 
end_time = time.time() 
distance = float(input("Enter the distance between the two sensors in metres")) #assigns a value to distance 
time_taken = end_time - start_time #works out the time it took the car to travel the length of the road 

AverageSpeed = distance/time_taken #works out the average speed of the car 
print ("The average speed of the car is", AverageSpeed, "m/s") #prints out the average speed of the car in m/s 
AverageSpeedMPH = (AverageSpeed * 2.23694) #converts to mph 
print ("That's", AverageSpeedMPH, "in mph") #prints out the speed in mph 

if AverageSpeedMPH > speed_limit: #prints out whether car is speeding, adds to txt file 
    print (reg_plate, "is speeding") 
    file = open("speeders.txt", "a") 
    file.write(reg_plate + ",") 
    file.close() 
else: 
    print (reg_plate, "is not speeding, be on your merry way") #prints out if not speeding 

学校项目下面是当应用程序运行

Please enter the car's registration plate5 
Please enter your speed limit in mph5 
Press enter when the car passes the first sensor 

Traceback (most recent call last): 
    File "C:\Users\Szymon\Google Drive\Computing\Actual CA work\app2.py", line 9, in <module> 
    input("Press enter when the car passes the first sensor")#lines 3-7 assign values to the end and start time variables 
    File "<string>", line 0 

    ^
SyntaxError: unexpected EOF while parsing 
+0

检查你正在使用哪个Python版本,并确保它是你应该在的那个版本。 – user2357112

+0

您是否输入文字,然后按下回车键?或者是从其他地方复制粘贴的“mph5”? – dshapiro

回答

0

看起来你正在使用Python2,但仍显示什么使用input()。尝试切换到Python3,或使用raw_input()

0

使用raw_input()而不是 '输入()'

If you use input, then the data you type is is interpreted as a Python Expression which means that you end up with gawd knows what type of object in your target variable, and a heck of a wide range of exceptions that can be generated. So you should NOT use input unless you're putting something in for temporary testing, to be used only by someone who knows a bit about Python expressions.

在这里寻找更多。 More Info

相关问题