写路径问题

初学者在学习时,往往会遇到一个错误,如下:

File "E:/python/test.py", line 77
    path = "C:\Users\Administrator\Desktop"
              ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

这个错误其实是因为这行代码引起的:

path = "C:\Users\Administrator\Desktop"

在这行代码中,有几个"\",而"\"在python中表示转义,转义是什么意思呢?举个例子: 执行以下代码将打印一个换行:

print("\n")

为什么不是输出"\n",而是输出一个换行呢,因为"n"经过"\"转义之后,成为一个换行符。 好的,现在回到我们的问题上,我们的变量path中的值带有"\",而"\"打算将U转义为有意义的符号,而"\"并未能如愿,因为没有对应的转义字符。这时只能报上述的错误SyntaxError: (unicode error) 'unicodeescape' 。


那么该如何解决呢?

第一种办法:

在字符串前加一个字母 r,如下:

path=r"C:\Users\Administrator\Desktop"

在字符串前加个 r 是为了告诉编译器这个string是个raw string,不要转义。

第二种办法:

将字符串中的反斜杠换成正斜杠,如下:

path="C:/Users/Administrator/Desktop"


关于路径问题,在不同系统中,写法都大同小异。而这些问题无外乎源于这两方面:正反斜杠,编码(无法识别中文等)。

results matching ""

    No results matching ""