저는 파일 시스템에서 파일을 읽어야하는 Python 앱용 Kivy를 GUI로 사용하려고합니다. 그러나 텍스트 필드의 텍스트에 대한 읽기 경로를 설정하는 동안 kivy 파일 선택기가 잘못된 경로를 읽거나 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가있는 팝업을 보여줍니다.
기본 오류는 올바른 경로를 읽지 못하기 때문에 filename [0]이 (가) IndexError를 throw한다는 점입니다. python2.7과 함께 Linux를 사용하고 있고 때로는 홈 폴더에서 파일을 선택할 때 filename 변수는 아무 것도 저장하지 않지만 path 변수는 misteriously/media,/opt 등의 임의의 폴더를 저장합니다.
누구든지이 문제를 해결 했습니까?