Python3에서 파일 선택 대화 상자(초보자용)
우분투 스튜디오 17.10
파이썬 3.6.3
@kekeho 님의 Python으로 MP3 음원 재생
htps : // 코 m / 케케 호 / ms / 아 0b93695d8 아 8 아 c6f1028
mp3 파일을 선택하는 대화 상자를 결합하려고했지만 검색하고 히트하는 것은 Python2 용이 많습니다.
실행하면 import에서 오류가 발생합니다.
검색 중이면 tkMessageBox, tkFileDialog가 python3에 통합되어있는 것 같습니다.
참고
Cassiopeia의 일기 씨
[Python] Tkinter (tkFileDialog)를 사용하여 파일 열기 대화 상자를 사용해보십시오.
htp://d. 하테나. 네. jp/카시오페아아/20070819/1187479725
tkMessageBox
h tps : // s t c ゔ ぇ rf ぉ w. 코 m / 쿠에 s 치온 s / 19074055 / 엔 s 툰 굿 케이크 메사게 보 x 온 py 쵸 2-7
tkFileDialog
h tps : // s t c ゔ ぇ rf ぉ w. 코 m / 쿠에 s 치온 s / 28590669 / t Kinte rtk ぃ
file_dialog.py
#!/usr/bin/python3
# -*- coding: utf-8 -*-
#import Tkinter #python2
import tkinter #python3
#import tkMessageBox #python2
from tkinter import messagebox as tkMessageBox #python3
#import tkFileDialog #python2
from tkinter import filedialog as tkFileDialog #python3
#root=Tkinter.Tk() #python2
root=tkinter.Tk() #python3
root.withdraw()
fTyp=[('テキストファイル','*.txt')]
#複数のタイプを指定することも可能。
iDir='/home/ユーザ名/' #iDir='c:/' #Windows
#askopenfilename 一つのファイルを選択する。
filename=tkFileDialog.askopenfilename(filetypes=fTyp,initialdir=iDir)
tkMessageBox.showinfo('FILE NAME is ...',filename)
#askopenfilenames 複数ファイルを選択する。
filenames=filedialog.askopenfilenames(filetypes=fTyp,initialdir=iDir)
for f in filenames:
tkMessageBox.showinfo('FILE NAME is ...',f)
#askdirectory ディレクトリを選択する。
dirname=tkFileDialog.askdirectory(initialdir=iDir)
tkMessageBox.showinfo('SELECTED DIRECROTY is ...',dirname)
초간이 MP3 간이 플레이어
상기의 「Python으로 MP3 음원을 재생한다」를 참고로 작성했습니다.
사용방법
시작하고 파일을 만든 후 반드시 취소 버튼을 클릭합니다.
재생 후 종료됩니다.
바로 가기를 만들고 시작 중입니다.
Terminal이 시작되도록 true로 설정합니다.
htps : // 이 m / ty21 ky / ms / 7 5d88 44714 9f672
#!/usr/bin/python3
# coding: UTF-8
from mutagen.mp3 import MP3 as mp3
import pygame
import time
import tkinter
from tkinter import messagebox as tkMessageBox
from tkinter import filedialog as tkFileDialog
def pathname(fullpath): #フルパスからパスを取り出す
n = fullpath.rfind('/') + 1
return fullpath[:n]
def play(filenames): #MP3を再生
#n = len(file) - 1
for file in filenames:
print(" {}\n".format(file)) #曲名表示
pygame.mixer.init()
pygame.mixer.music.load(file)
mp3_length = mp3(file).info.length
pygame.mixer.music.play(1)
time.sleep(mp3_length + 1.25)
pygame.mixer.music.stop()
def select(): #ファイル選択
root=tkinter.Tk()
root.withdraw()
fTyp = [('MP3ファイル','*.mp3')]
iDir = '~/Music/' #デフォルトのフォルダはHomeDir
filename = []
while True:
list_no = len(filename)
filename.insert(list_no, tkFileDialog.askopenfilename(filetypes=fTyp,initialdir=iDir,title = "簡易MP3 Player (ファイル選択を終了する時はキャンセルをクリック)"))
iDir = pathname(filename[list_no]) #選択するフォルダを1つ前に選択したフォルダに変更
if filename[list_no] == '':
break
i = len(filename) - 1
del filename[i] #ファイル選択の時に、最後にnullが入っているので削除する
print(" 再生する曲名\n")
for kyoku in filename:
print(" {}\n".format(kyoku))
print("再生中------------------------------------------\n")
return filename
print("\n MP3 簡易プレーヤー\n")
play(select()) #MP3を再生
Reference
이 문제에 관하여(Python3에서 파일 선택 대화 상자(초보자용)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ty21ky/items/79afea36b471a044d8d8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)