我試圖使用Kivy作爲我的python應用程序的GUI,它需要從文件系統讀取文件。 但是,在某些情況下,當我嘗試爲文本字段的文本設置讀取路徑時,kivy filechooser讀取錯誤的路徑或導致IndexError失效。 我使用默認例如讀取文件從http://kivy.org/docs/api-kivy.uix.filechooser.html 我的應用程序的相關部分在此功能,在異常處理添加爲不是一個好方法來處理這個教訓:)python kivy filechooser讀取錯誤路徑
def load(self, path, filename):
'''
this will load the file and dismiss the dialog
'''
print "Loading file..."
print "filename:",filename
print "path:",path
try:
self.selected_file = filename[0]
self.file_text_input.text = self.selected_file
self.dismiss_popup()
except IndexError as ie:
print "Something made a boo-boo...try again"+str(ie)
self.dismiss_popup()
self.show_popup("ERROR","Somehow I couldn't load the file:\nCheck the permissions or move it to other place")
自我。 show_popup()只是一個輔助函數,它顯示了一個帶有set函數params的彈出窗口。
基本錯誤是文件名[0]會拋出一個IndexError,因爲它沒有讀取正確的路徑。 我在python2.7中使用Linux,當我在我的home文件夾中選擇一個文件時,文件名變量什麼都不存儲,而path變量存儲一個隨機文件夾,例如/ media,/ opt等等。
有沒有人遇到過這個問題?