我为团队项目编写了一个返回函数。 我使用python 3.4并写了这个:
def readrouter(x, y):
conn = sqlite3.connect('server.db')
cur = conn.cursor()
cur.execute("SELECT DISTINCT command FROM router WHERE
function =? or type = ? ORDER BY key ASC",(x, y))
read = cur.fetchall()
return read;
a = input("x:")
b = input("y:")
for result in readrouter(a,b):
print (result[0])
由于我的主要成员使用的是2.7,我现在需要关注他的版本。 在我将.py重新输入到python 2.7之后 有一个错误:
x:create vlan
Traceback (most recent call last):
File "C:/Users/f0449492/Desktop/2015225/database.py", line 322, in <module>
a = input("x")
File "<string>", line 1
create vlan
^
SyntaxError: unexpected EOF while parsing
Process finished with exit code 1
如何修复此错误?
答案 0 :(得分:2)
在Python 2.7中,将input()替换为raw_input()。
前者在输入字符串上运行eval(),并期望有效的Python代码作为输入。您的输入create vlan
不是有效的Python,无法进行评估。后者只返回一个字符串,没有进一步处理。
答案 1 :(得分:0)
作为后续工作 - 为了确保与两个Python分支的兼容性,您可以使用six。