def show_chosen_image(workdir, index): if index >= 0: filename = lw_files.currentItem().text() workimage.load_image(workdir, filename) image_path = os.path.join(workimage.dir, workimage.filename) workimage.show_image(image_path) def choose_workdir(): try: workdir = QFileDialog.getExistingDirectory() if workdir: return workdir else: print("Папка не выбрана") return None except: return None def filter(files): result = [] extension = [".png", ".jpg", ".jpeg", ".gif", ".bmp"] for file in files: for ext in extension: if file.endswith(ext): # endswith("original.jpg") -> .jpg -> [] result.append(file) return result def show_filenames(): dir = choose_workdir() files = filter(os.listdir(dir)) # ["name.docs", "1.xlsx", "2.pptx", "original.jpg"] lw_files.clear() for file in files: lw_files.addItem(file) lw_files.currentRowChanged.connect(partial(show_chosen_image, dir)) btn_bw.clicked.connect(workimage.do_bw) btn_dir.clicked.connect(show_filenames)