要将同一文件夹下的图片和文本存放到指定文件夹下,你可以使用PySide6提供的文件对话框来选择文件路径,并将选定的文件复制到目标文件夹。
以下是一个示例代码,展示了如何选择并复制图片和文本文件到指定文件夹:
import sys
import os
import shutil
from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton, QFileDialog
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle("Copy Files Example")
self.setFixedSize(400, 200)
# 添加按钮用于选择文件路径
select_button = QPushButton("选择文件", self)
select_button.setGeometry(150, 50, 100, 30)
select_button.clicked.connect(self.select_files)
def select_files(self):
dialog = QFileDialog()
# 设置默认打开的路径为当前工作目录
default_dir = os.getcwd()
files_paths, _ = dialog.getOpenFileNames(self,
"选择多个文件",
default_dir,
"Images (*.png *.jpg);;Text files (*.txt)")
if files_paths:
target_folder_path = "./target"
if not os.path.exists(target_folder_path):
os.makedirs(target_folder_path)
for file_path in files_paths:
_, file_name = os.path.split(file_path)
target_file_path = os.path.join(target_folder_path, file_name)
shutil.copyfile(file_path, target_file_path)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec())
在这个示例代码中,我们添加了一个按钮,当用户点击该按钮时,会弹出一个文件对话框,用户可以选择多个图片或文本文件。
一旦用户选择了文件,我们将选定的每个文件复制到指定的目标文件夹中。如果目标文件夹不存在,则创建它。
请注意,在示例代码中需要替换目标文件夹路径为你自己的实际路径。
希望这个示例能帮助到你!
内容由零声教学AI助手提供,问题来源于学员提问