python Windows环境下文件路

发布时间:2019-09-26 10:43:25编辑:auto阅读(1745)

    在python程序里面我们经常需要对文件进行操作,Windows下的文件目录路径使用反斜杠“\”来分隔。但是,和大多数语言一样,Python代码里面,反斜杠“\”是转义符,例如“\n”表示回车、“\t”表示制表符等等。这样,如果继续用windows习惯使用“\”表示文件路径,就会产生歧义。

    例如

    “c:\test.txt”这表示c盘根目录下的一个文件,还是表示一个字符串呢?因为“\t”也可以解释为制表符。如果让我们人来判断,这当然是一个很简单的问题。但是机器就无法做出正确的判断了,只有没有歧义的代码机器才会正确执行。

    解决办法

    采用下面任何一种书写形式均可:

    使用斜杠“/”:
    "c:/test.txt"
    不用反斜杠就没法产生歧义了

    将反斜杠符号转义
    "c:\\test.txt"
    因为反斜杠是转义符,所以两个”\\“就表示一个反斜杠符号

    使用Python的raw string
    r"c:\test.txt"
    python下在字符串前面加上字母r,表示后面是一个原始字符串raw string,不过raw string主要是为正则表达式而不是windows路径设计的,所以这种做法尽量少用,可能会出问题。

    参考这里

关键字