Мой html состоит из имени, имени, возраста и пола. Я извлекаю значения из него и хочу записать их в файле. Однако я получаю сообщение об ошибке IOError: Bad file.
На моей странице html, при отправке клика я вызываю этот test.py, который должен записывать данные в имя файла "copy.txt",
Мой тестовый код:
#!/usr/bin/python
import cgi
print "Content- type : text/html\n"
form = cgi.FieldStorage()
Fname = form.getvalue('firstname')
Lname = form.getvalue('lastname')
Age = form.getvalue('age')
Gender = form.getvalue('gender')
f = open("copy","w")
for data in f:
f.write("Fname")
f.write("Lname")
f.write("age")
f.write("gender")
f.close()
Ошибка:
Traceback (most recent call last):
File "test.py", line 16, in <module>
for data in f:
IOError: [Errno 9] Bad file descriptor
Попробуйте следующее: трудно сказать, в чем проблема, потому что вы не предоставляете трассировку:
import cgi
print "Content- type : text/html\n"
form = cgi.FieldStorage()
Fname = form.getvalue('firstname')
Lname = form.getvalue('lastname')
Age = form.getvalue('age')
Gender = form.getvalue('gender')
with open('copy.txt', 'w') as f:
for data in f:
f.write("Fname")
f.write("Lname")
f.write("age")
f.write("gender")
Если вы не можете использовать with
ключевым словом, то вы будете иметь, чтобы закрыть его, как правило:
f = open('copy.txt', 'w')
for data in f:
f.write("Fname")
f.write("Lname")
f.write("age")
f.write("gender")
f.close()
f = open("copy.txt","w")