Ver*_* Lu 28 python windows filesystems
在我的Python 2.6(64位,win7,ActivePython)上,当我打电话时:
os.path.abspath('D:/PROJECTS/SuiShouBei/www/ssb/static/voices/en/mp3/con.mp3')
它返回:
'\\\\.\\con'
到目前为止,我对其他路径没有任何问题.
任何人都有同样的问题?
有人可以告诉我为什么吗?
Tim*_*ker 45
我可以在Python 2.6,2.7,3.1和3.2中重现这一点.
这种行为的原因是Windows中CON的非法文件名(试着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)
Run Code Online (Sandbox Code Playgroud)
也不要使用以下保留的设备名称作为文件名(带或不带扩展名):
CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9,
LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9.
Run Code Online (Sandbox Code Playgroud)
正如slowdog注意到的那样,在上面相同的MSDN文档中提到了\\.\CON直接访问这样的设备名称的正确方法.
| 归档时间: |
|
| 查看次数: |
1030 次 |
| 最近记录: |