Ответ 1
Я могу воспроизвести это в Python 2.6, 2.7, 3.1 и 3.2.
Причиной такого поведения является тот факт, что CON
является незаконным именем файла в Windows (попробуйте os.path.abspath('D:/PROJECTS/SuiShouBei/www/ssb/static/voices/en/mp3/cont.mp3')
и убедитесь, что все работает нормально).
Поэтому следите за тем, чтобы ваши имена файлов не содержали
< (less than)
> (greater than)
: (colon)
" (double quote)
/ (forward slash)
\ (backslash)
| (vertical bar or pipe)
? (question mark)
* (asterisk)
Также не используйте следующие зарезервированные имена устройств для имени файла (с расширением или без него):
CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9,
LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9.
Как заметил slowdog, он упоминается в том же документе MSDN, что и выше, что \\.\CON
- это правильный способ прямого доступа к такому имени устройства.