【问题标题】:How do I force Python to acknowledge files in a sub-directory WITHOUT manually typing the file path如何强制 Python 在不手动输入文件路径的情况下确认子目录中的文件
【发布时间】:2017-07-10 20:54:22
【问题描述】:

我正在尝试编写一个程序,该程序可以查找并打开用户选择的文件,而无需事先了解文件位置。但是,我找不到一个路径操作模块或函数来促进这一点。

我查看了 os、sys 和 wxPython 模块,我发现没有一个函数似乎能够返回包含子目录的文件的完整路径。它们似乎都只是在工作目录中附加了文件名。(我知道有些使用的是 HOMEPATH 或 USERPROFILE,但它最终是相同的。)这不会创建一个真实的路径,因此不能用于打开文件。

这些函数可以在内存中定位文件,但不会返回包含工作目录子目录的路径,这让我很困惑。

更令人沮丧的是,我在 wxPython 中使用 File_ctrl 对象作为用户的输入接口,所以我知道当用户在某处选择文件时,解释器会确认文件的位置,但我不能找到我需要使用什么方法来获取文件的完整路径。

我也意识到我可以使用 os.listdir 和 os.walk 设置文件搜索,但我希望尽可能避免进行该搜索。

【问题讨论】:

    标签: python


    【解决方案1】:

    要获取通过 wxPython FileCtrl 选择的文件的路径,请使用 FileCtrl 的 GetPath 方法,或结合 FileCtrlEventGetDirectoryGetFile 方法的输出进行选择。

    【讨论】:

    • 是的,我最终使用 GetDirectory 和 GetFilename 方法来执行此操作(绑定到文件夹更改事件)。如果不使用 wxPython,它仍然不一定能解决这个问题,但它现在对我有用。
    猜你喜欢
    • 1970-01-01
    • 2021-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-17
    • 2016-01-17
    • 2022-01-27
    • 1970-01-01
    相关资源
    最近更新 更多