繁体   English   中英

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

[英]Address error: (unicode error) 'unicodeescape' codec can't decode

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

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 转义

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

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

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

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

你的任务然后变成

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

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

而不是在python中使用\\ use /这种方式你可以克服这个“(Unicode错误)'unicodeescape'编解码器无法解码位置2-3的字节:截断\\ UXXXXXXXX转义”错误

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM