Aproveite o poder do Python e crie seu próprio reprodutor de música usando os módulos PyGame e Tkinter.

Os players de música evoluíram rapidamente com o tempo. Começou com gramofones, jukeboxes, CD players e MP3 players. Hoje, você pode ouvir música no seu celular ou no próprio computador. Explorando esse conceito, desenvolva um aplicativo de tocador de música usando Python e divirta-se.

O Módulo Tkinter, PyGame e SO

Para construir o reprodutor de música, você precisa do Tkinter, PyGame e do módulo OS. Tkinter é a biblioteca GUI padrão para Python que você pode usar para criar aplicativos de desktop. Ele oferece uma variedade de widgets como botões, rótulos e caixas de texto para que você possa desenvolver aplicativos rapidamente. Para instalar o Tkinter, abra um terminal e execute:

pip instalar tkinter

Usando o PyGame, você pode desenvolver videogames incríveis que podem ser executados em qualquer plataforma. É simples de usar e vem com bibliotecas gráficas e de som para agilizar seu processo de desenvolvimento. Você usará o PyGame

instagram viewer
mixer.music módulo para fornecer várias funcionalidades ao seu reprodutor de música. Para instalar o PyGame, execute:

pip instalar pygame

Finalmente, você precisa o módulo do sistema operacional para carregar as músicas em seu sistema. O módulo OS vem com a biblioteca padrão do Python e não precisa de uma instalação separada. Com este módulo, você pode acessar funções específicas do sistema para lidar com seu sistema operacional.

Como construir um reprodutor de música usando Python

Você pode encontrar o código-fonte do aplicativo Music Player usando Python neste Repositório GitHub.

Comece importando os módulos Tkinter, PyGame e OS. Definir uma classe, Reprodutor de música. Defina a __iniciar__ construtor que o programa chama no momento da criação do objeto. Você pode usar a instância auto para acessar quaisquer variáveis ​​ou métodos dentro da classe.

Inicialize a janela raiz e defina o título e as dimensões do seu reprodutor de música. Inicialize todos os módulos PyGame importados junto com o módulo do mixer. Defina a faixa e o status como StringVar tipo. Usando isso, você pode definir um valor de texto e recuperá-lo quando necessário.

de tkinter importar *
importar pygame
importar os

aulaReprodutor de música:

def__iniciar__(eu, raiz):
self.root = root
self.root.title("Reprodutor de música")
self.root.geometry("1000x200")
pygame.init()
pygame.mixer.init()
self.track = StringVar()
self.status = StringVar()

Definir um LabelFrame que conterá o trilha sonora etiqueta e o trackstatus rótulo. Labelframe atua como um contêiner e exibe os rótulos dentro de uma área de borda. Defina a janela pai na qual deseja colocar o quadro, o texto que deve ser exibido, os estilos de fonte, a cor de fundo, a cor da fonte, a largura da borda e os efeitos 3D fora do widget.

Use o lugar() método para organizar o quadro. Defina dois rótulos, trilha sonora e trackstatus. Personalize-os e use o grade() gerente para organizá-los em formato de linhas e colunas. Você pode definir a música para estar presente na primeira linha e adicionar algum preenchimento para evitar sobreposições e tornar o design mais bonito.

 trackframe = LabelFrame (self.root, text="Faixa de música",fonte=("arial",15,"audacioso"),bg="#8F00FF",fg="branco",bd=5,relevo=GROOVE)
trackframe.place (x=0,y=0,largura=600,altura=100)
songtrack = Label (trackframe, textvariable=self.track, width=20,fonte=("arial",24,"audacioso"),bg="#8F00FF",fg="#B0FC38").grid (linha=0,coluna=0,padx=10,pady=5)
trackstatus = Rótulo (trackframe, textvariable=self.status, fonte=("arial",24,"audacioso"),bg="#8F00FF",fg="#B0FC38").grid (linha=0,coluna=1,padx=10,pady=5)

Da mesma forma, defina um quadro que conterá quatro botões. Personalize e organize-o abaixo do trackframe. Definir quatro botões, Jogar, Pausa, Retomar, e Parar. Defina a janela pai na qual você deseja colocar os botões, o texto que deve exibir, as funções deve executar quando clicado, a largura, a altura, o estilo da fonte, a cor do plano de fundo e a cor da fonte deveria.

Use o grade() gerenciador para organizar os botões em uma única linha e quatro colunas diferentes.

 buttonframe = LabelFrame (self.root, text="Painel de controle",fonte=("arial",15,"audacioso"),bg="#8F00FF",fg="branco",bd=5,relevo=GROOVE)
buttonframe.place (x=0,y=100,largura=600,altura=100)
playbtn = Botão (moldura do botão, text="JOGAR",command=self.playsong, width=6,altura=1,fonte=("arial",16,"audacioso"),fg="azul-marinho",bg="#B0FC38").grid (linha=0,coluna=0,padx=10,pady=5)
playbtn = Botão (moldura do botão, text="PAUSA",command=self.pausesong, width=8,altura=1,fonte=("arial",16,"audacioso"),fg="azul-marinho",bg="#B0FC38").grid (linha=0,coluna=1,padx=10,pady=5)
playbtn = Botão (moldura do botão, text="UNPAUSE",command=self.unpausesong, width=10,altura=1,fonte=("arial",16,"audacioso"),fg="azul-marinho",bg="#B0FC38").grid (linha=0,coluna=2,padx=10,pady=5)
playbtn = Botão (moldura do botão, text="PARAR",command=self.stopsong, width=6,altura=1,fonte=("arial",16,"audacioso"),fg="azul-marinho",bg="#B0FC38").grid (linha=0,coluna=3,padx=10,pady=5)

Definir um LabelFrame, frame de música. Isso conterá as músicas que você deseja reproduzir no seu reprodutor de música. Personalize as propriedades do quadro e coloque-o no lado direito da faixa e do quadro do botão. Adicione uma barra de rolagem vertical para acessar as músicas mesmo quando sua lista de músicas for longa.

Use o Caixa de listagem widget para exibir as músicas. Defina a cor de fundo a ser exibida ao selecionar o texto e o modo. O modo único permite selecionar uma música por vez. Além disso, inicialize o estilo da fonte, a cor do plano de fundo, a cor da fonte, a largura da borda e o estilo 3D que você deseja em torno dela.

 songframe = LabelFrame (self.root, text="Lista de músicas",fonte=("arial",15,"audacioso"),bg="#8F00FF",fg="branco",bd=5,relevo=GROOVE)
songframe.place (x=600,y=0,largura=400,altura=200)
scroll_y = barra de rolagem (songsframe, orient=VERTICAL)
self.playlist = Listbox (songsframe, yscrollcommand=scroll_y.set, selectbackground="#B0FC38",selecionar modo=ÚNICO, fonte=("arial",12,"audacioso"),bg="#CF9FFF",fg="azul-marinho",bd=5,relevo=GROOVE)

Coloque a barra de rolagem no lado direito da janela e preencha-a como Y. Isso garante que, sempre que você expandir a janela, a barra de rolagem também se expanda na direção Y. Configure a caixa de listagem para usar o yview método da barra de rolagem para rolar verticalmente. Embale a caixa de listagem para ocupar o espaço horizontal e verticalmente.

Altere o diretório de trabalho atual para o caminho especificado. Repita as músicas e insira-as na caixa de listagem uma a uma. Você usa FIM como o primeiro argumento, pois você deseja adicionar novas linhas ao final da caixa de listagem.

 scroll_y.pack (lado=DIREITA, preenchimento=Y)
scroll_y.config (comando=self.playlist.yview)
self.playlist.pack (fill=AMBOS)
os.chdir("Path_to_your_songs_folder")
faixas de músicas = os.listdir()
para acompanhar em trilhas sonoras:
self.playlist.insert (END, faixa)

Defina uma função, tocar música. Defina a faixa para exibir o nome da música junto com o status como -Jogando. Use o carregar() e jogar() funções do módulo mixer.music do PyGame para carregar música para reprodução e iniciá-la.

deftocar música(auto):
self.track.set (self.playlist.get (ATIVO))
self.status.set("-Jogando")
pygame.mixer.music.load (self.playlist.get (ATIVO))
pygame.mixer.music.play()

Da mesma forma, defina funções para parar, pausar e retomar as músicas usando parar(), pausa(), e não pausar().

defmúsica parada(auto):
self.status.set("-Parou")
pygame.mixer.music.stop()

defmúsica de pausa(auto):
self.status.set("-Pausado")
pygame.mixer.music.pause()

defretomar a música(auto):
self.status.set("-Jogando")
pygame.mixer.music.unpause()

Inicialize a instância do Tkinter e exiba a janela raiz passando-a para a classe. O circuito principal() A função diz ao Python para executar o loop de eventos Tkinter e escutar os eventos até que você feche a janela.

raiz = Tk()
MusicPlayer (raiz)
root.mainloop()

Junte todo o código e você terá seu reprodutor de música pronto para tocar na ponta dos dedos. Você pode personalizar ainda mais seu reprodutor de música adicionando objetos e formas usando os módulos de desenho do PyGame.

Saída do aplicativo Music Player usando Python

Ao executar o programa, o music player inicia as músicas que você selecionou como uma lista de reprodução. Ao escolher qualquer uma das músicas e bater no botão Jogar botão, a música começa a tocar. Da mesma forma, a música pausa, retoma e para de tocar com o clique dos botões apropriados.

Criando jogos com o módulo PyGame

PyGame é um módulo poderoso que você pode usar para criar jogos como Frets on Fire, Flappy Bird, Snake, Super Potato Bruh, Sudoku e muito mais. O PyGame possui um design orientado a objetos, para que você possa reutilizar códigos e personalizar os personagens de seus jogos facilmente.

Ele oferece suporte e fornece ótimos gráficos, sons, ferramentas de entrada e saída, para que você possa se concentrar em projetar seu jogo em vez de investir seu tempo na codificação de cada minuto de recurso. Como alternativa, você pode explorar Pyglet e Kivy, que são mais rápidos, suportam projetos 3D, são mais intuitivos e vêm com atualizações regulares.