Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Tkinter askdirectory在资源管理器中显示不正确的驱动器_Python_Windows_Tkinter_Filedialog - Fatal编程技术网

Python Tkinter askdirectory在资源管理器中显示不正确的驱动器

Python Tkinter askdirectory在资源管理器中显示不正确的驱动器,python,windows,tkinter,filedialog,Python,Windows,Tkinter,Filedialog,我开发了一个工具,通过BlackJet TX-4DS自动存储和备份XQD卡到SSD的图像数据。在我的测试中,它工作得完美无缺。然而,在现实世界的应用程序中,我遇到了一个bug,我不知道该如何处理它。基本上,脚本在第一次运行时按计划工作,但是,当移除卡并输入第二组卡时,先前XQD卡的名称将显示在关联的文件资源管理器中,并带有askdirectory()。例如,输入、复制和弹出卡1和卡2。卡3和卡4是输入的,但在askdirectory()窗口中显示卡1和卡2。Windows文件资源管理器显示正确的

我开发了一个工具,通过BlackJet TX-4DS自动存储和备份XQD卡到SSD的图像数据。在我的测试中,它工作得完美无缺。然而,在现实世界的应用程序中,我遇到了一个bug,我不知道该如何处理它。基本上,脚本在第一次运行时按计划工作,但是,当移除卡并输入第二组卡时,先前XQD卡的名称将显示在关联的文件资源管理器中,并带有askdirectory()。例如,输入、复制和弹出卡1和卡2。卡3和卡4是输入的,但在askdirectory()窗口中显示卡1和卡2。Windows文件资源管理器显示正确的驱动器名(卡3和卡4)。下面的代码从所选目录中删除路径和卡名,并正确输出(卡3和卡4)。问题是我无法确定哪张卡显示为卡1或卡2。关闭并重新运行程序似乎可以修复卡名,但我正在寻找一些东西来更新Tkinter的文件列表,或者让我们在后台保持工具打开

def FolderSelect():
    folder_path = os.path.normpath(askdirectory(title = "Select " +  entry.split("_")[0].upper() + " Imagery Folder"))
    if folder_path.split('\\')[-1] != "100PHASE" and (entry.split("_")[0] == "aft" or entry.split("_")[0] == "fore"):
       folder_path = os.path.join(folder_path,"DCIM","100PHASE")
       drive_name = " ".join(str(subprocess.check_output(['cmd','/c vol '+ folder_path.split('\\')[0]])).split("\\r\\n")[0].split(" ")[-2:])
     return folder_path, drive_name
folder_path, drive_name = FolderSelect()        
明天我会附上一张照片