2017-10-30 3 views
2

アドレスを画像に使用すると、画像を表示するコードに構文エラーが発生しています。アドレスエラー:(unicode error) 'unicodeescape'コーデックがデコードできない

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 error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated\UXXXXXXXX escape

答えて

2

In Python strings, the backslash "\" is a special character, also called the "escape" character. It is used in representing certain whitespace characters: "\t" is a tab, "\n" is a newline, and "\r" is a carriage return.

私はエラーがそれにあなたの住所、特に特殊文字"\"を参照していると信じています。文字列には"\"を使用できません。文字列をエスケープします。あなたの住所に"\\"を使ってみることができます。これはうまくいくはずです。

対象にfuther読み取りはこちらをご覧ください:私はスラッシュが干渉することを知らなかったhttp://www.pitt.edu/~naraehan/python2/tutorial7.html

+0

感謝を。それは今働く。 – Praemium

0

エラーは、ファイルパスを入力した方法です。 Windowsでは円記号\を使用してファイル名とファイル名を区切りますが、通訳者がこれらの特殊文字を見るたびに、ユニコードエスケープシーケンス(\nなど)を探します。バックスラッシュを挿入するには、\\を挿入する必要があります.1つはスラッシュでエスケープシーケンスをトリガーし、もう1つはバックスラッシュitlesfを目的の特殊文字として示します。

あなたの割り当ては、その後、私のシミュレーション上の任意のエラーをスローdoes't

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

になります。

関連する問題