Например, при простой операции создания каталога я могу сделать OSError следующим образом:
(Убунту Линукс)
>>> import os
>>> os.mkdir('foo')
>>> os.mkdir('foo')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
OSError: [Errno 17] File exists: 'foo'
Теперь я могу поймать эту ошибку следующим образом:
>>> import os
>>> os.mkdir('foo')
>>> try:
... os.mkdir('foo')
... except OSError, e:
... print e.args
...
(17, 'File exists')
Есть ли кросс-платформенный способ узнать, что 17 или «Файл существует» всегда будут означать одно и то же, чтобы я мог действовать по-разному в зависимости от ситуации?
(Это появилось во время другого вопрос.)