Tag: ioerror

在os.system()期间会导致“IOError:错误的文件描述符”?

我正在使用一个科学软件,包括一个调用os.system()的Python脚本,用于运行另一个科学程序。 在subprocess正在运行的时候,Python在某些时候打印出下列内容: close failed in file object destructor: IOError: [Errno 9] Bad file descriptor 我相信这个消息是在os.system()返回的同时打印的。 我现在的问题是: 哪些情况会导致这种types的IOError? 这究竟意味着什么? 这对os.system()调用的subprocess意味着什么?

Python的“open()”为“文件未find”抛出不同的错误 – 如何处理这两个exception?

我有一个脚本,提示用户键入要打开的文件的文件名,如果该文件不存在于当前目录中,则会再次提示用户。 这是简短的版本: file = input("Type filename: ") … try: fileContent = open(filename, "r") … except FileNotFoundError: … 当我在Python 3.3x的MacOS X上testing我的脚本时,当我input错误的文件名(它在“expect”下执行套件)时,它工作得很好。 但是,当我想在Python 3.2x的Windows计算机上运行我的代码时,出现“FileNotFoundError”未定义的错误。 所以,Windows上的Python 3.2认为“FileNotFoundError”是一个variables,程序退出时出现错误。 我发现如果input文件名无效的话,Windows 3.2上的Python 3.2会抛出一个“IOError”。 我在Python 2.7的Linux机器上testing了它,它也是一个IOError。 我的问题是,现在的代码与 except "FileNotFoundError": 不会在Windows的Python 3.2上运行,但如果我改变它 except "IOError": 它不会在我的Mac上工作了。 我怎么能解决它? 我能想到的唯一方法就是使用except我通常不想要的东西。

为什么mod_wsgi无法写入数据? IOError:写入数据失败

什么可能导致这个错误: $ sudo tail -n 100 /var/log/apache2/error.log' [Wed Dec 29 15:20:03 2010] [error] [client 220.181.108.181] mod_wsgi (pid=20343): Exception occurred processing WSGI script '/home/username/public_html/idm.wsgi'. [Wed Dec 29 15:20:03 2010] [error] [client 220.181.108.181] IOError: failed to write data 这是WSGI脚本: $ cat public_html/idm.wsgi import os import sys sys.path.append('/home/username/public_html/IDM_app/') os.environ['DJANGO_SETTINGS_MODULE'] = 'settings' import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler() 为什么Django不能写数据? 我正在运行Django […]

地区:IOError:无效模式('w')或文件名

我不知道为什么,但由于某种原因,每当我有输出文件的文件名称中的“区域”,它给了我这个错误: IOError:[Errno 22] invalid mode('w')or filename:'path \ regionlog.txt' 它为“region.txt” , “logregion.txt”等 class writeTo: def __init__(self, stdout, name): self.stdout = stdout self.log = file(name, 'w') #here is where it says the error occurs output = os.path.abspath('path\regionlog.txt') writer = writeTo(sys.stdout, output) #and here too 为什么是这样? 我真的想命名我的文件“regionlog.txt”,但它不断出现这个错误。 有没有办法解决它?