Izkoristite moč Pythona in zgradite svoj predvajalnik glasbe z uporabo modulov PyGame & Tkinter.

Predvajalniki glasbe so se s časom hitro razvijali. Začelo se je z gramofoni, džuboksi, CD predvajalniki in MP3 predvajalniki. Danes lahko poslušate glasbo na svojem mobilnem telefonu ali samem računalniku. Raziskovanje prav tega koncepta, razvoj aplikacije za predvajanje glasbe z uporabo Pythona in groove off.

Modul Tkinter, PyGame in OS

Za izdelavo predvajalnika glasbe potrebujete Tkinter, PyGame in modul OS. Tkinter je standardna knjižnica GUI za Python, ki jo lahko uporabite za ustvarjanje namiznih aplikacij. Ponuja različne pripomočke, kot so gumbi, oznake in besedilna polja, tako da lahko v hipu razvijete aplikacije. Če želite namestiti Tkinter, odprite terminal in izvedite:

pip namestite tkinter

Z uporabo PyGame lahko razvijete neverjetne video igre, ki se lahko izvajajo na kateri koli platformi. Je preprost za uporabo in ima grafične in zvočne knjižnice, ki pohitrijo razvojni proces. Uporabili boste PyGame

instagram viewer
mešalnik.glasba modul za zagotavljanje različnih funkcij predvajalniku glasbe. Če želite namestiti PyGame, izvedite:

pip namestite pygame

Končno potrebujete modul OS za nalaganje pesmi v vaš sistem. Modul OS je opremljen s standardno knjižnico Python in ne potrebuje ločene namestitve. S tem modulom lahko dostopate do funkcij, specifičnih za vaš operacijski sistem.

Kako zgraditi predvajalnik glasbe z uporabo Pythona

Tukaj lahko najdete izvorno kodo aplikacije Music Player, ki uporablja Python Repozitorij GitHub.

Začnite z uvozom modulov Tkinter, PyGame in OS. Določite razred, Predvajalnik glasbe. Določite __v__ konstruktor, ki ga program pokliče v času ustvarjanja objekta. Uporabite lahko primer sebe za dostop do spremenljivk ali metod znotraj razreda.

Inicializirajte korensko okno in nastavite naslov ter dimenzije predvajalnika glasbe. Inicializirajte vse uvožene module PyGame skupaj z modulom mešalnika. Nastavite skladbo in status za StringVar vrsta. S tem lahko nastavite besedilno vrednost in jo po potrebi pridobite.

od tkinter uvoz *
uvoz pygame
uvoz os

razredPredvajalnik glasbe:

def__v__(jaz, koren):
self.root = koren
self.root.title("Predvajalnik glasbe")
self.root.geometry("1000x200")
pygame.init()
pygame.mixer.init()
self.track = StringVar()
self.status = StringVar()

Določite a LabelFrame ki bo vseboval songttrack etiketa in trackstatus oznaka. Labelframe deluje kot vsebnik in prikazuje oznake znotraj obrobnega območja. Nastavite nadrejeno okno, v katerega želite postaviti okvir, besedilo, ki naj bo prikazano, sloge pisave, barvo ozadja, barvo pisave, širino obrobe in 3D učinke zunaj pripomočka.

Uporabi mesto() način organiziranja okvirja. Določite dve oznaki, skladba pesmi in trackstatus. Prilagodite jih in uporabite mreža() upravitelja, da jih organizira v obliki vrstic in stolpcev. Skladbo lahko nastavite tako, da je prisotna v prvi vrstici, in dodate nekaj oblazinjenja, da preprečite prekrivanje in naredite dizajn lepši.

 trackframe = LabelFrame (self.root, text="Skladba pesmi",pisava=("arial",15,"krepko"),bg="#8F00FF",fg="bela",bd=5,relief=GROOVE)
trackframe.place (x=0,y=0,širina=600,višina=100)
songtrack = Oznaka (trackframe, textvariable=self.track, width=20,pisava=("arial",24,"krepko"),bg="#8F00FF",fg="#B0FC38").mreža (vrstica=0,stolpec=0,padx=10,pady=5)
trackstatus = Oznaka (trackframe, textvariable=self.status, font=("arial",24,"krepko"),bg="#8F00FF",fg="#B0FC38").mreža (vrstica=0,stolpec=1,padx=10,pady=5)

Podobno določite okvir, ki bo vseboval štiri gumbe. Prilagodite in organizirajte ga pod sledilnim okvirjem. Določite štiri gumbe, Igraj, Pavza, Prekini premor, in Stop. Nastavite nadrejeno okno, v katerega želite postaviti gumbe, besedilo, ki naj bo prikazano, njegove funkcije naj se ob kliku izvede širina, višina, slog pisave, barva ozadja in barva pisave bi moral.

Uporabi mreža() upravitelja za organiziranje gumbov v eni vrstici in štirih različnih stolpcih.

 buttonframe = LabelFrame (self.root, text="Nadzorna plošča",pisava=("arial",15,"krepko"),bg="#8F00FF",fg="bela",bd=5,relief=GROOVE)
buttonframe.place (x=0,y=100,širina=600,višina=100)
playbtn = Gumb (okvir gumba, besedilo="IGRAJ",command=self.playsong, width=6,višina=1,pisava=("arial",16,"krepko"),fg="mornarsko modra",bg="#B0FC38").mreža (vrstica=0,stolpec=0,padx=10,pady=5)
playbtn = Gumb (okvir gumba, besedilo="PAVZA",command=self.pausesong, width=8,višina=1,pisava=("arial",16,"krepko"),fg="mornarsko modra",bg="#B0FC38").mreža (vrstica=0,stolpec=1,padx=10,pady=5)
playbtn = Gumb (okvir gumba, besedilo="PREKLIC",command=self.unpausesong, width=10,višina=1,pisava=("arial",16,"krepko"),fg="mornarsko modra",bg="#B0FC38").mreža (vrstica=0,stolpec=2,padx=10,pady=5)
playbtn = Gumb (okvir gumba, besedilo="STOP",command=self.stopsong, width=6,višina=1,pisava=("arial",16,"krepko"),fg="mornarsko modra",bg="#B0FC38").mreža (vrstica=0,stolpec=3,padx=10,pady=5)

Določite LabelFrame, okvir pesmi. To bo vsebovalo skladbe, ki jih želite predvajati v predvajalniku glasbe. Prilagodite lastnosti okvirja in ga postavite na desno stran okvirja skladbe in gumba. Dodajte navpični drsni trak za dostop do skladb, tudi če je vaš seznam skladb dolg.

Uporabi Listbox widget za prikaz skladb. Nastavite barvo ozadja, ki bo prikazana, ko izberete besedilo, in način. Enotni način vam omogoča, da izberete eno pesem naenkrat. Poleg tega inicializirajte slog pisave, barvo ozadja, barvo pisave, širino obrobe in 3D-slog, ki ga želite obkrožati.

 songsframe = LabelFrame (self.root, text="Seznam predvajanja pesmi",pisava=("arial",15,"krepko"),bg="#8F00FF",fg="bela",bd=5,relief=GROOVE)
songsframe.place (x=600,y=0,širina=400,višina=200)
scroll_y = Drsni trak (okvir pesmi, orient=NAVPIČNO)
self.playlist = Listbox (okvir pesmi, yscrollcommand=scroll_y.set, selectbackground="#B0FC38",selectmode=SINGLE, pisava=("arial",12,"krepko"),bg="#CF9FFF",fg="mornarsko modra",bd=5,relief=GROOVE)

Zapakirajte drsni trak na desno stran okna in ga zapolnite kot Y. To zagotavlja, da se vsakič, ko razširite okno, drsni trak razširi tudi v smeri Y. Konfigurirajte seznamsko polje za uporabo yview metoda drsnega traku za navpično pomikanje. Spakirajte polje s seznamom, da zavzamete prostor vodoravno in navpično.

Spremenite trenutni delovni imenik na navedeno pot. Preglejte pesmi in jih eno za drugo vstavite v seznamsko polje. Uporabljaš KONEC kot prvi argument, saj želite dodati nove vrstice na konec seznamskega polja.

 scroll_y.pack (stran=DESNO, polnilo=Y)
scroll_y.config (ukaz=self.playlist.yview)
self.playlist.pack (fill=BOTH)
os.chdir("Pot_do_mape_vaših_pesmi")
skladbe = os.listdir()
za skladba v skladbe:
self.playlist.insert (KONEC, skladba)

Definirajte funkcijo, playsong. Nastavite skladbo tako, da prikaže ime pesmi skupaj s statusom kot -Igranje. Uporabi naloži() in igraj() funkcije modula mixer.music PyGame za nalaganje glasbe za predvajanje in zagon.

defplaysong(sebe):
self.track.set (self.playlist.get (AKTIVNO))
self.status.set("-Igranje")
pygame.mixer.music.load (self.playlist.get (AKTIVNO))
pygame.mixer.music.play()

Podobno definirajte funkcije za zaustavitev, premor in prekinitev predvajanja skladb stop(), pavza(), in prekini premor().

defstopsong(sebe):
self.status.set("-ustavljen")
pygame.mixer.music.stop()

defpausesong(sebe):
self.status.set("-Zaustavljeno")
pygame.mixer.music.pause()

defunpausesong(sebe):
self.status.set("-Igranje")
pygame.mixer.music.unpause()

Inicializirajte primerek Tkinter in prikažite korensko okno, tako da ga posredujete razredu. The glavna zanka() funkcija pove Pythonu, naj zažene zanko dogodkov Tkinter in posluša dogodke, dokler ne zaprete okna.

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

Sestavite vso kodo in na dosegu roke imate predvajalnik glasbe, pripravljen za predvajanje. Predvajalnik glasbe lahko še dodatno prilagodite tako, da dodajanje predmetov in oblik z uporabo modulov za risanje PyGame.

Izhod aplikacije predvajalnik glasbe z uporabo Pythona

Ko zaženete program, predvajalnik glasbe zažene skladbe, ki ste jih izbrali kot seznam predvajanja. Ko izberete katero koli od pesmi in pritisnete na Igraj gumb, se glasba začne predvajati. Podobno se glasba začasno ustavi, prekine in ustavi predvajanje s klikom ustreznih gumbov.

Gradnja iger z modulom PyGame

PyGame je zmogljiv modul, ki ga lahko uporabite za izdelavo iger, kot so Frets on Fire, Flappy Bird, Snake, Super Potato Bruh, Sudoku in druge. PyGame ima objektno usmerjeno zasnovo, tako da lahko znova uporabite kode in enostavno prilagodite like svojih iger.

Podpira in zagotavlja odlično grafiko, zvoke, vhodna in izhodna orodja, tako da se lahko osredotočite na oblikovanje svoje igre, namesto da vlagate svoj čas v kodiranje vsake posamezne funkcije. Druga možnost je, da raziščete Pyglet in Kivy, ki sta hitrejša, podpirata 3D-projekte, sta bolj intuitivna in imata redne posodobitve.