Python pygame音乐从文本文件加载



我制作了一个音乐播放器,它使用带有我歌曲名称的列表,但这真的很烦人,所以我制作了一个文本文件,其中包含每首歌曲的名称。 我将文本转换为列表,然后尝试加载第一首歌曲,但它无法加载。 这是我的代码:

SongPath = '/home/pi/Desktop/Muziek/'
f = open(SongPath + 'Songs.txt')
Song = f.readlines()
print(SongPath + Song[0])
print('Music Player(Alpha2.2)')
import pygame
from time import sleep
sorted(Song)
CurrentSong = 0
State = 'Playing'
pygame.mixer.init()
pygame.mixer.music.load(SongPath + Song[0])
pygame.mixer.music.play()
print("Songs:")
for i in range(0, len(Song)):
print(i+1, Song[i])
print('nStarted auto play on:n' + Song[CurrentSong])

。 还有更多的代码,但它与这个问题无关。 但是当我加载它时,它说:

/home/pi/Desktop/Muziek/Toto-Afrika.mp3
Music Player(Alpha2.3)
Traceback (most recent call last):
File "/home/pi/ABC.py", line 13, in <module>
pygame.mixer.music.load(SongPath + Song[0])
pygame.error:
Couldn't open '/home/pi/Desktop/Muziek/Toto-Africa.mp3'

顺便说一句,图片没有上传,所以我输入了它。

f.readlines()返回一个字符串列表,每个字符串的末尾仍然附加了换行符'n'

所以它实际上是在尝试加载'/home/pi/Desktop/Muziek/Toto-Africa.mp3n'(更仔细地查看原始错误消息而不是重新键入的版本:结束引号是否实际出现在文件名下方的行上?

试试这个:

pygame.mixer.music.load(SongPath + Song[0].strip())

最新更新