Python easygui 无法选择文件

2 投票
1 回答
3145 浏览
提问于 2025-04-18 15:41

这是我的代码:

import easygui
f = easygui.fileopenbox()
print f

看起来很简单,但当我运行它的时候,我无法选择任何文件,链接里的图片可以看到。抱歉如果这个问题很傻,但我真的不知道该怎么办了!

https://i.stack.imgur.com/A0otI.jpg

1 个回答

2

EasyGui这个工具现在不再支持了。在OS X系统上,我用fileopenbox没有遇到这个问题(其实这和diropenbox的情况很像)。我建议你试试wxPython。下面是如何在wxPython中打开文件选择框的方法(来自https://stackoverflow.com/a/9319832/866271

import wx

def get_path(wildcard):
    app = wx.App(None)
    style = wx.FD_OPEN | wx.FD_FILE_MUST_EXIST
    dialog = wx.FileDialog(None, 'Open', wildcard=wildcard, style=style)
    if dialog.ShowModal() == wx.ID_OK:
        path = dialog.GetPath()
    else:
        path = None
    dialog.Destroy()
    return path

print get_path('*.txt')

在OS X上测试过,没有问题。它也是跨平台的。如果你打算做图形用户界面(GUI)开发,有很多选择可以考虑,但wxPython是个不错的选择,因为它使用的是你所运行的操作系统的原生组件。所以看起来都挺好看的 :)

对于你的情况,如果你要打开的是CSV文件,可以直接调用get_path('*.csv')。或者你也可以调用get_path('*')来获取所有文件。

撰写回答