Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erklärung der Fehlerlösung beim Laden von MP3-Dateien mit chinesischen Namen in Pygame

Ausführliche Erklärung der Fehlerlösung beim Laden von MP3-Dateien mit chinesischen Namen in Pygame

高洛峰
高洛峰Original
2017-03-31 10:04:343381Durchsuche

#pygame spielt MP3-Dateien ab:

Hier stellt der Autor nur eine leicht verständliche Methode vor

Ausführliche Erklärung der Fehlerlösung beim Laden von MP3-Dateien mit chinesischen Namen in Pygame

Öffnen Sie das offizielle Dokument und ich habe es gefunden Das ist, wie Discovery Like the New World, zu mächtig, und jetzt kann ich es nur zum Abspielen meiner MP3s verwenden. Nun, der Rest wird später entdeckt, was auch immer Sie sagen, hier ist ein Testcode zum Abspielen von MP3s 🎜>

import pygame
path = 'Pam Pam - Noel Toto.mp3'pygame.mixer.init()
pygame.mixer.music.load(path)
pygame.mixer.music.play()
Unter anderem stellt Pfad den Pfad und den Dateinamen der abzuspielenden MP3-Datei dar. Hier verwendet der Autor den ursprünglichen Leerlauf, der die MP3 normal abspielen kann.

# Fehler gefunden :

Als nächstes kommt das Problem, auf das ich gestoßen bin, als ich am Nachmittag mit dem Testen der Musikliste fertig war, das heißt, als der Name der zu ladenden MP3-Datei Chinesisch enthielt, pygame.error.

Ausführliche Erklärung der Fehlerlösung beim Laden von MP3-Dateien mit chinesischen Namen in Pygame

Das ist peinlich. Ich habe festgestellt, dass es auf Chinesisch keine verstümmelten Zeichen gibt, und habe festgestellt, dass einige Leute in der chinesischen Community gesagt haben, dass es sich um

Python handelt Einige Leute sagten auch, dass die Codierung geändert werden kann. Es scheint, dass es in englischen Communities keine Lösung gibt Alles in allem kümmern sich Ausländer nicht so sehr um „unsere eigenen Angelegenheiten“. Ich habe also lange gesucht und keine wirksame Lösung gefunden Dies kann ich nicht tun^_^.#debug:

Der Autor hat sich eine unterhaltsame Methode ausgedacht, und es sollte eine bessere geben Implementierungsmethode. Lassen Sie mich zunächst schamlos über meine Debugging-Ideen sprechen:

Wenn ich auf den chinesischen Namen mp3 stoße, tritt zu diesem Zeitpunkt ein schwerwiegender Fehler auf Es ist natürlich, an die

try-Anweisung

zu denken. Wenn beim Auftreten eines Fehlers der chinesische Name mp3 auftritt, wird der Autor automatisch zum Kopieren der abzuspielenden Datei weitergeleitet Laden Sie diese nicht-chinesische MP3-Datei in das angegebene Verzeichnis um und umgehen Sie so den Fehler in der chinesischen Erkennung:

# Laufeffekt:

import pygameimport shutil
path = '一走过的日子-刘德华.mp3'pygame.mixer.init()try:
    pygame.mixer.music.load(path)
    pygame.mixer.music.play()except:    print('something is wrong~\nbut i see you.')
    shutil.copyfile(path,'play.mp3')
    pygame.mixer.music.load('play.mp3')
    pygame.mixer.music.play()

Zu diesem Zeitpunkt kann das Programm chinesische MP3-Dateien normal abspielen. Tatsächlich löst dieses Problem das chinesische Erkennungsproblem von Pygame nicht, sondern umgeht dieses Problem hat auch NachteileDas heißt, es wird die Datei play.mp3 generiert, die bei der Arbeit am Projekt im Ausführliche Erklärung der Fehlerlösung beim Laden von MP3-Dateien mit chinesischen Namen in Pygame Cache

abgelegt werden kann. An dieser Stelle die Beschreibung der Lösung Das heute Nachmittag aufgetretene Pygame-Erkennungsproblem ist behoben. Bitte kommentieren Sie es und lassen Sie es mich wissen Datei mixer.pyd. Ich habe festgestellt, dass es sich um eine Binärdatei wie dll handelt. Mit anderen Worten, Python ist nicht vollständig Open Source

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung der Fehlerlösung beim Laden von MP3-Dateien mit chinesischen Namen in Pygame. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn