地址错误:(unicode error)'unicodeescape'编解码器无法解码

Posted

技术标签:

【中文标题】地址错误:(unicode error)\'unicodeescape\'编解码器无法解码【英文标题】:Address error: (unicode error) 'unicodeescape' codec can't decode地址错误:(unicode error)'unicodeescape'编解码器无法解码 【发布时间】:2018-04-11 15:24:27 【问题描述】:

当我使用图像的地址时,显示图像的代码出现语法错误。

from tkinter import *
import numpy as np
import matplotlib.pyplot as plt
from PIL import Image

Scare = Tk()
Scare.title('?????')
Countdown = 2
CountTotal = 2
CountTotal = IntVar()

def CountdownWork():
    global Countdown
    if Countdown > 0:
        Countdown = Countdown -1
        CountTotal.set(Countdown)
        Scare.after(1000, CountdownWork)
    else:
        ImageAddress = 'C:\Users\KINSLED\Desktop\New folder\ScareTest.jpg'
        ImageItself = Image.open(ImageAddress)
        ImageNumpyFormat = np.asarray(ImageItself)
        plt.imshow(ImageNumpyFormat)
        plt.draw()
        plt.pause(5) # pause how many seconds
        plt.close()



Count = Label(Scare, font=('arial', 10, 'bold'), textvariable=CountTotal, 
bd=30, bg='SeaGreen1', justify='right').grid(row=7,columnspan=8)

CountdownWork()

Scare.mainloop()

语法错误突出显示 ImageAdress 中等号之后的空格。

错误是:

(unicode 错误)'unicodeescape' 编解码器无法解码位置 2-3 中的字节:截断\UXXXXXXXX 转义

【问题讨论】:

【参考方案1】:

在 python 中不要使用\,而是使用/。这样你就可以克服这个

(Unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated\UXXXXXXXX escape" error

【讨论】:

【参考方案2】:

在 Python 字符串中,反斜杠 "\" 是一个特殊字符,也称为“转义”字符。它用于表示某些空白字符:"\t" 是制表符,"\n" 是换行符,"\r" 是回车符。

我认为错误是引用您的地址,特别是其中的特殊字符 "\"。您不能在字符串中使用"\",因为它会转义字符串。您可以尝试在您的地址中使用"\\",我认为这应该可以。

有关该主题的进一步阅读,请参阅此处:http://www.pitt.edu/~naraehan/python2/tutorial7.html

【讨论】:

谢谢 我不知道斜线会干扰。现在可以了。【参考方案3】:

错误在于您输入文件路径的方式。 Windows 使用反斜杠 \ 来分隔文件名中的文件和目录,但是任何时候解释器看到这些特殊字符时,它都会寻找一个 unicode 转义序列,例如 \n。要插入反斜杠,您需要插入\\,一个斜杠触发转义序列,另一个指示反斜杠 itlesf 作为所需的特殊字符。

你的任务就变成了

ImageAddress = 'C\\:Users\\KINSLED\\Desktop\\New folder\\ScareTest.jpg'

这不会在我的模拟中引发任何错误。

【讨论】:

以上是关于地址错误:(unicode error)'unicodeescape'编解码器无法解码的主要内容,如果未能解决你的问题,请参考以下文章

字符编码的前世今生--转

六位 unicode 转义值比较

VC的UNICODE 编程

从 torrent 中读取 Unicode 元数据

关于VS2015 字符集采用Unicode时出现的问题

字符串编码小记