[PYTHON] 파이썬에서 빠르고 쉬운 파일 대화 상자?
PYTHON파이썬에서 빠르고 쉬운 파일 대화 상자?
나는 파일을 파싱하고 그 내용을 데이터베이스에로드하는 간단한 스크립트를 가지고있다. UI는 필요 없지만 지금은 사용자가 파일을 가장 친숙하지 않은 raw_input을 사용하여 구문 분석하도록 요구하고 있습니다. 특히 사용자가 경로를 복사 / 붙여 넣기 할 수 없기 때문입니다. 파일 선택 대화 상자를 사용자에게 빠르고 쉽게 제시하고 파일을 선택할 수 있으며 데이터베이스에로드됩니다. (필자의 경우, 잘못된 파일을 선택했다면 파싱에 실패하고 데이터베이스에로드 된 경우에도 문제가되지 않습니다.)
import tkFileDialog
file_path_string = tkFileDialog.askopenfilename()
이 코드는 내가 원하는 것에 가깝지만 짜증나는 빈 프레임을 열어 둡니다 (닫을 수없는 이유는 아마도 close 이벤트 핸들러를 등록하지 않았기 때문일 수 있습니다).
tkInter를 사용할 필요는 없지만, Python 표준 라이브러리에 있기 때문에 가장 빠르고 쉬운 솔루션을위한 좋은 후보입니다.
다른 UI없이 스크립트에서 파일이나 파일명을 물어 보는 빠르고 쉬운 방법은 무엇입니까?
해결법
-
==============================
1.Tkinter는 다른 의존성을 원하지 않는다면 가장 쉬운 방법입니다. 다른 GUI 요소없이 대화 상자 만 표시하려면 withdraw 메서드를 사용하여 루트 창을 숨겨야합니다.
Tkinter는 다른 의존성을 원하지 않는다면 가장 쉬운 방법입니다. 다른 GUI 요소없이 대화 상자 만 표시하려면 withdraw 메서드를 사용하여 루트 창을 숨겨야합니다.
import tkinter as tk from tkinter import filedialog root = tk.Tk() root.withdraw() file_path = filedialog.askopenfilename()
Python 2 변형 :
import Tkinter, tkFileDialog root = Tkinter.Tk() root.withdraw() file_path = tkFileDialog.askopenfilename()
-
==============================
2.easygui를 사용할 수 있습니다.
easygui를 사용할 수 있습니다.
import easygui path = easygui.fileopenbox()
easygui를 설치하려면 pip를 사용할 수 있습니다.
pip3 install easygui
이것은 tkinter를 사용하는 단일 순수 파이썬 모듈 (easygui.py)입니다.
-
==============================
3.wxPython을 사용해보십시오.
wxPython을 사용해보십시오.
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')
-
==============================
4.UI가 필요하지 않거나 프로그램이 CLI에서 실행될 것으로 예상되면 파일 경로를 인수로 구문 분석 할 수 있습니다. 이렇게하면 CLI의 자동 완성 기능을 사용하여 필요한 파일을 빠르게 찾을 수 있습니다.
UI가 필요하지 않거나 프로그램이 CLI에서 실행될 것으로 예상되면 파일 경로를 인수로 구문 분석 할 수 있습니다. 이렇게하면 CLI의 자동 완성 기능을 사용하여 필요한 파일을 빠르게 찾을 수 있습니다.
스크립트가 파일 경로 입력 외에 비대화 형일 경우에만 유용 할 것입니다.
-
==============================
5.작업을 수행해야하는 모듈 인 사용하기 쉬운 EasyGUI를 확인하십시오. - http://easygui.sourceforge.net/
작업을 수행해야하는 모듈 인 사용하기 쉬운 EasyGUI를 확인하십시오. - http://easygui.sourceforge.net/
fileopenbox 함수 (http://www.ferg.org/easygui/easygui.html#-fileopenbox)를 사용합니다.
from https://stackoverflow.com/questions/9319317/quick-and-easy-file-dialog-in-python by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 파이썬에서 문자열의 끝에서 부분 문자열을 어떻게 제거합니까? (0) | 2018.10.10 |
---|---|
[PYTHON] "R-essentials"에서 사용할 수없는 R 패키지를 설치하는 방법은 무엇입니까? (0) | 2018.10.10 |
[PYTHON] 파이썬에서 콤마와 공백으로 분리 (0) | 2018.10.10 |
[PYTHON] 여러 키로 파이썬 사전 목록 정렬 (0) | 2018.10.09 |
[PYTHON] 파이썬 : __getitem__에서 슬라이싱 구현하기 (0) | 2018.10.09 |