私のguiは現在、4つの異なるファイルの場所を選択するオプションを持つコンボボックスを持っています。そのディレクトリ内の選択されたすべてのファイルがリストボックスに表示されます一度:Python:if文の末尾のパスを変更する
def ComboBox(self, event):
current = self.buttonChoice.current()
if (current == 0):
self.lb.delete(0, END)
for i in range(0, length1):
self.lb.insert(END, self.files1[i])
elif (current == 1):
self.lb.delete(0, END)
sys.path.insert(0, sys.path[0]+ "\\folder1")
for i in range(0, length2):
self.lb.insert(END, self.files2[i])
elif (current == 2):
self.lb.delete(0, END)
sys.path.insert(0, sys.path[0]+ "\\folder2")
for i in range(0, length3):
self.lb.insert(END, self.files2[i])
elif (current == 3):
self.lb.delete(0, END)
sys.path.insert(0, sys.path[0]+ "\\folder3")
for i in range(0, length4):
self.lb.insert(END, self.files4[i])
しかし、私のパス機能ありえない最適な機能は、親ディレクトリに戻り、そのフォルダ(例現在の場合では代わりに貼られていないため、== 1ディレクトリは... \ folder1になります)。この作業をするには、各ステートメントの最後に1つ下のディレクトリを移動する必要があります。私は関連する質問を見て、os.chdir('..')
を見つけた。何らかの理由でこれを実装するのに問題があります。どのように私は各ステートメントの最後に1つのディレクトリを下に移動することができますの任意のアイデア。
filepaの分割について( '\\')[: - 1]) '? '\\'。join(filepath.split( '\\')[: - 1])'?最後に '1'を変更すると、さらに後ろに移動することができます –
@Ev Kounis:' os.path.dirname'はそれをより良くします。 –
@ Jean-FrançoisFabreそれをありがとう!私は答えに組み込んだ。 –