|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
0. 下边只有一种方式不能打开文件,请问是哪一种,为什么?
>>> f = open('E:/test.txt', 'w') # A
>>> f = open('E:\test.txt', 'w') # B
>>> f = open('E://test.txt', 'w') # C
>>> f = open('E:\\test.txt', 'w') # D
复制代码
答:B不能打开文件。
Windows在路径名中既可以接受斜线(/)也可以接受反斜线(\),不过如果使用反斜线作为路径名的分隔符的话,要注意使用双反斜线(\\)进行转义,否则Python会将反斜线进行转义,例如(\n)看成一个换行符,(\t)看作一个制表符等。
请问大神:为什么C选项//也能打开,双正斜杠代表什么意思?
本帖最后由 isdkz 于 2022-3-4 17:13 编辑
在 python 中打开文件对象时,会把字符串中的斜杠和反斜杠都当成路径分隔符,
多个斜杠和反斜杠连续出现它都会当成一个,
不过因为反斜杠会转义,所以得偶数个连续出现,
使用原始字符串不会转义反斜杠也可以任意数个连续出现。
f = open('E://////////test.txt', 'w') # 斜杠可以任意多个连续出现,连续的斜杠它只会当成一个
f = open('E:\\\\test.txt', 'w') # 反斜杠会转义,所以得偶数多个连续出现,连续的反斜杠它只会当成一个
f = open(r'E:\\\test.txt', 'w') # 反斜杠可以任意多个连续出现,连续的反斜杠它只会当成一个
|
|