Python:从HTML表单变量写入文件,500内部服务器错误?
我得到一个500内部服务器错误,但我不知道为什么?我不知道这是否是一个问题或语法或什么,但谢谢Python:从HTML表单变量写入文件,500内部服务器错误?,python,html,forms,Python,Html,Forms,我得到一个500内部服务器错误,但我不知道为什么?我不知道这是否是一个问题或语法或什么,但谢谢 #!/usr/bin/python import cgi import cgitb; cgitb.enable() form = cgi.FieldStorage() z = open("survey.ssv", "r") f = open("results.ssv", "a+") lines = z.readlines() i = 0 for line in lines: if i ==
#!/usr/bin/python
import cgi
import cgitb; cgitb.enable()
form = cgi.FieldStorage()
z = open("survey.ssv", "r")
f = open("results.ssv", "a+")
lines = z.readlines()
i = 0
for line in lines:
if i == 0:
else:
if form.getvalue("demFeels%d") == stronglyAgree % i
f.write("1 ")
if form.getvalue("demFeels%d") == agree % i
f.write("2 ")
if form.getvalue("demFeels%d") == disagree % i
f.write("3 ")
if form.getvalue("demFeels%d") == stronglyDisagree % i
f.write("4 ")
i = i + 1
f.close()
z.close()
这是一个语法错误。在几个“if”语句之后,您缺少冒号 要在将来调试此功能,可以使用Python解释器运行代码。CGI的东西不起作用,但是如果你遇到语法错误,解释器会告诉你在哪里
或者,您可以查阅Web服务器错误日志,查看抛出了什么错误 这是一个语法错误。在几个“if”语句之后,您缺少冒号 要在将来调试此功能,可以使用Python解释器运行代码。CGI的东西不起作用,但是如果你遇到语法错误,解释器会告诉你在哪里
或者,您可以查阅Web服务器错误日志,查看抛出了什么错误 查看您的代码,我可以看出这是由于
SyntaxError
,更具体地说是在您的if
语句中
更改:
if form.getvalue("demFeels%d") == stronglyAgree % i
致:
对该else
块中的所有if
语句执行该操作,然后解决该部分问题
此外,您在此条件语句中没有任何内容:
if i == 0: # Something needs to go here.
当它导致
预期的缩进块查看代码时,我可以看出这是由于语法错误造成的,更具体地说是在if
语句中
更改:
if form.getvalue("demFeels%d") == stronglyAgree % i
致:
对该else
块中的所有if
语句执行该操作,然后解决该部分问题
此外,您在此条件语句中没有任何内容:
if i == 0: # Something needs to go here.
此时,它会导致预期的缩进块
除了其他人指出的缺少冒号之外,您的字符串格式也有问题。%
必须紧跟在要格式化的字符串之后,而不是在行尾。因此,它应该是:
if form.getvalue("demFeels%d" % i) == stronglyAgree:
等等。除了其他人指出的缺少冒号之外,字符串格式也有问题。%
必须紧跟在要格式化的字符串之后,而不是在行尾。因此,它应该是:
if form.getvalue("demFeels%d" % i) == stronglyAgree:
等等。CGI。。。。。真正地你一定要吗?CGI。。。。。真正地必须吗?if i==0意味着什么也不做。我希望它跳过I=0的情况,并执行I>=1cases@user3251142在这种情况下,不要使用if:else:
,而是将您的代码放在if:0:
中的else:
中,并去掉原始的if
。或者,只需将pass
添加到您当前的if
语句中。if i==0意味着什么也不做。我希望它跳过I=0的情况,并执行I>=1cases@user3251142在这种情况下,不要使用if:else:
,而是将您的代码放在if:0:
中的else:
中,并去掉原始的if
。或者,只需将pass
添加到您当前的if
语句中即可。