Využite silu Pythonu a vytvorte si svoj vlastný hudobný prehrávač pomocou modulov PyGame & Tkinter.

Hudobné prehrávače sa postupom času rýchlo vyvíjali. Začalo to gramofónmi, jukeboxmi, CD prehrávačmi a MP3 prehrávačmi. Dnes môžete počúvať hudbu na mobile alebo samotnom počítači. Pri skúmaní tohto konceptu vyviňte aplikáciu hudobného prehrávača pomocou Pythonu a Groove off.

Modul Tkinter, PyGame a OS

Na zostavenie prehrávača hudby potrebujete modul Tkinter, PyGame a OS. Tkinter je štandardná knižnica GUI pre Python, ktorú môžete použiť na vytváranie desktopových aplikácií. Ponúka množstvo miniaplikácií, ako sú tlačidlá, štítky a textové polia, takže môžete okamžite vyvíjať aplikácie. Ak chcete nainštalovať Tkinter, otvorte terminál a vykonajte:

pip nainštalovať tkinter

Pomocou PyGame môžete vyvíjať úžasné videohry, ktoré môžu bežať na akejkoľvek platforme. Je jednoduchý na používanie a dodáva sa s grafickými a zvukovými knižnicami, aby bol váš vývojový proces rýchlejší. Budete používať PyGame's

instagram viewer
mixér.hudba modul na poskytovanie rôznych funkcií vášmu prehrávaču hudby. Ak chcete nainštalovať PyGame, vykonajte:

pip install pygame

Nakoniec potrebujete modul OS na načítanie skladieb do vášho systému. Modul OS sa dodáva so štandardnou knižnicou Pythonu a nevyžaduje samostatnú inštaláciu. Pomocou tohto modulu môžete pristupovať k funkciám špecifickým pre váš operačný systém.

Ako vytvoriť hudobný prehrávač pomocou Pythonu

Zdrojový kód aplikácie Music Player pomocou Pythonu nájdete v tomto úložisko GitHub.

Začnite importovaním modulov Tkinter, PyGame a OS. Definujte triedu, Hudobný prehrávač. Definujte __init__ konštruktor, ktorý program volá v čase vytvárania objektu. Môžete použiť inštanciu seba na prístup k akýmkoľvek premenným alebo metódam v rámci triedy.

Inicializujte koreňové okno a nastavte názov a rozmery prehrávača hudby. Inicializujte všetky importované moduly PyGame spolu s modulom mixéra. Nastavte skladbu a stav StringVar typu. Pomocou toho môžete nastaviť textovú hodnotu a v prípade potreby ju získať.

od tkinter importovať *
importovať pygame
importovať os

triedaHudobný prehrávač:

def__init__(ja, koreň):
self.koreň = koreň
self.root.title("Hudobný prehrávač")
self.root.geometria("1 000 x 200")
pygame.init()
pygame.mixer.init()
self.track = StringVar()
self.status = StringVar()

Definujte a LabelFrame ktorá bude obsahovať skladba štítok a stav stopy štítok. Labelframe funguje ako kontajner a zobrazuje štítky v hraničnej oblasti. Nastavte rodičovské okno, do ktorého chcete rám umiestniť, text, ktorý sa má zobraziť, štýly písma, farbu pozadia, farbu písma, šírku okraja a 3D efekty mimo miniaplikácie.

Použi miesto() spôsob usporiadania rámu. Definujte dva štítky, skladba a stav stopy. Prispôsobte si ich a použite mriežka() správcu, aby ich usporiadal do riadkov a stĺpcov. Skladbu môžete nastaviť tak, aby bola prítomná v prvom rade, a pridať výplň, aby ste sa vyhli prekrývaniu a aby bol dizajn krajší.

 trackframe = LabelFrame (self.root, text="Skladba piesne",font=("arial",15,"tučné"),bg="#8F00FF",fg="biely",bd=5,reliéf=GROOVE)
trackframe.place (x=0,y=0,šírka=600,výška=100)
skladba = Label (trackframe, textvariable=self.track, width=20,font=("arial",24,"tučné"),bg="#8F00FF",fg="#B0FC38").mriežka (riadok=0,stĺpec=0,padx=10,pady=5)
trackstatus = Label (trackframe, textvariable=self.status, font=("arial",24,"tučné"),bg="#8F00FF",fg="#B0FC38").mriežka (riadok=0,stĺpec=1,padx=10,pady=5)

Podobne definujte rám, ktorý bude obsahovať štyri tlačidlá. Prispôsobte a usporiadajte ho pod rámom dráhy. Definujte štyri tlačidlá, hrať, Pauza, Zrušiť pozastavenie, a Stop. Nastavte rodičovské okno, do ktorého chcete vložiť tlačidlá, text, ktorý má zobrazovať, funkcie by sa mal spustiť po kliknutí, šírka, výška, štýl písma, farba pozadia a farba písma by mal mať.

Použi mriežka() manažér na usporiadanie tlačidiel do jedného riadka a štyroch rôznych stĺpcov.

 buttonframe = LabelFrame (self.root, text="Ovládací panel",font=("arial",15,"tučné"),bg="#8F00FF",fg="biely",bd=5,reliéf=GROOVE)
buttonframe.place (x=0,y=100,šírka=600,výška=100)
playbtn = Tlačidlo (rámček tlačidla, text="HRAŤ",príkaz=self.playsong, width=6,výška=1,font=("arial",16,"tučné"),fg="námornícka modrá",bg="#B0FC38").mriežka (riadok=0,stĺpec=0,padx=10,pady=5)
playbtn = Tlačidlo (rámček tlačidla, text="PAUZA",command=self.pausesong, width=8,výška=1,font=("arial",16,"tučné"),fg="námornícka modrá",bg="#B0FC38").mriežka (riadok=0,stĺpec=1,padx=10,pady=5)
playbtn = Tlačidlo (rámček tlačidla, text="UNPAUSE",príkaz=self.unpausesong, width=10,výška=1,font=("arial",16,"tučné"),fg="námornícka modrá",bg="#B0FC38").mriežka (riadok=0,stĺpec=2,padx=10,pady=5)
playbtn = Tlačidlo (rámček tlačidla, text="STOP",príkaz=self.stopsong, width=6,výška=1,font=("arial",16,"tučné"),fg="námornícka modrá",bg="#B0FC38").mriežka (riadok=0,stĺpec=3,padx=10,pady=5)

Definujte LabelFrame, rámec piesne. Bude obsahovať skladby, ktoré chcete prehrať na hudobnom prehrávači. Prispôsobte vlastnosti rámu a umiestnite ho na pravú stranu rámu stopy a tlačidla. Pridajte zvislý posúvač, aby ste mali prístup k skladbám, aj keď je váš zoznam skladieb dlhý.

Použi Zoznam widget na zobrazenie skladieb. Nastavte farbu pozadia, ktorá sa zobrazí pri výbere textu, a režim. Jediný režim vám umožňuje vybrať jednu skladbu naraz. Okrem toho inicializujte štýl písma, farbu pozadia, farbu písma, šírku okraja a požadovaný 3D štýl.

 songframe = LabelFrame (self.root, text="Zoznam skladieb",font=("arial",15,"tučné"),bg="#8F00FF",fg="biely",bd=5,reliéf=GROOVE)
songframe.place (x=600,y=0,šírka=400,výška=200)
scroll_y = posuvník (rámček skladby, orient=VERTICAL)
self.playlist = Zoznam (rámec skladby, yscrollcommand=scroll_y.set, selectbackground="#B0FC38",selectmode=SINGLE, font=("arial",12,"tučné"),bg="#CF9FFF",fg="námornícka modrá",bd=5,reliéf=GROOVE)

Posuňte posúvač na pravú stranu okna a vyplňte ho ako Y. To zaisťuje, že vždy, keď rozbalíte okno, posúvač sa roztiahne aj v smere Y. Nakonfigurujte zoznam na použitie yview metóda posúvača na zvislé posúvanie. Zabaľte zoznam tak, aby zabral priestor horizontálne aj vertikálne.

Zmeňte aktuálny pracovný adresár na zadanú cestu. Iterujte skladby a vkladajte ich do zoznamu jednu po druhej. Používaš KONIEC ako prvý argument, pretože chcete pridať nové riadky na koniec zoznamu.

 scroll_y.pack (strana=RIGHT, fill=Y)
scroll_y.config (command=self.playlist.yview)
self.playlist.pack (fill=BOTH)
os.chdir("Cesta_to_your_songs_folder")
skladby = os.listdir()
pre trať v skladby:
self.playlist.insert (KONIEC, skladba)

Definujte funkciu, hraná pieseň. Nastavte skladbu tak, aby zobrazovala názov skladby spolu so stavom ako -Hrám. Použi naložiť() a hrať() funkcie modulu mixer.music PyGame na načítanie hudby na prehrávanie a jej spustenie.

defhraná pieseň(ja):
self.track.set (self.playlist.get (ACTIVE))
self.status.set("-Hrám")
pygame.mixer.music.load (self.playlist.get (ACTIVE))
pygame.mixer.music.play()

Podobne definujte funkcie na zastavenie, pozastavenie a zrušenie pozastavenia skladieb stop(), pauza(), a zrušiť pozastavenie ().

defstopsong(ja):
self.status.set("-Zastavené")
pygame.mixer.music.stop()

defpauza(ja):
self.status.set("-Pozastavené")
pygame.mixer.music.pause()

defprerušiť skladbu(ja):
self.status.set("-Hrám")
pygame.mixer.music.unpause()

Inicializujte inštanciu Tkinter a zobrazte koreňové okno jeho odovzdaním triede. The mainloop() funkcia hovorí Pythonu, aby spustil slučku udalostí Tkinter a počúval udalosti, kým nezatvoríte okno.

koreň = Tk()
MusicPlayer (root)
root.mainloop()

Zložte celý kód a budete mať svoj hudobný prehrávač pripravený na prehrávanie na dosah ruky. Svoj hudobný prehrávač si môžete ešte viac prispôsobiť pridávanie objektov a tvarov pomocou modulov kreslenia PyGame.

Výstup z aplikácie hudobného prehrávača pomocou Pythonu

Po spustení programu hudobný prehrávač spustí skladby, ktoré ste vybrali ako zoznam skladieb. Pri výbere niektorej zo skladieb a stlačení hrať tlačidlo, hudba sa začne prehrávať. Podobne sa hudba pozastaví, zruší a zastaví prehrávanie kliknutím na príslušné tlačidlá.

Budovanie hier s modulom PyGame

PyGame je výkonný modul, ktorý môžete použiť na vytváranie hier ako Frets on Fire, Flappy Bird, Snake, Super Potato Bruh, Sudoku a ďalšie. PyGame má objektovo orientovaný dizajn, takže môžete jednoducho znova použiť kódy a prispôsobiť postavy svojich hier.

Podporuje a poskytuje skvelú grafiku, zvuky, vstupné a výstupné nástroje, takže sa môžete sústrediť na navrhovanie svojej hry a nemusíte investovať svoj čas do kódovania každej jednotlivej funkcie. Prípadne môžete preskúmať Pyglet a Kivy, ktoré sú rýchlejšie, podporujú 3D projekty, sú intuitívnejšie a prichádzajú s pravidelnými aktualizáciami.