我打算发布一个示例,但我说搞砸了,我只是发布我所拥有的。对我放轻松。我习惯了红宝石。Python 对我来说是全新的。
我有一个名为 que 的文件,其中包含一堆歌曲。我想创建一个后台线程,不断检查 que 中是否有任何歌曲。如果其中有歌曲,则在第一行播放歌曲,然后删除第一行。(.que.swp)。
现在的问题是,我不知道如何在后台完成这一切。我有另一个类允许用户将歌曲添加到 que 文件中。所以它们需要同时运行。
class MusicPlayer(threading.Thread):
def __init__(self):
super(MusicPlayer, self).__init__()
self.que_file = "que"
self.playQue()
def playQue(self):
while 1:
try:
f = open(self.que_file, "r")
songUp = f.readline()
songUp = songUp.rstrip()
cmd = "cvlc \"%s\" vlc://quit &>/dev/null" % (songUp)
os.system(cmd)
data="".join(open(self.que_file).readlines()[1:-1])
open(".que.swp","wb").write(data)
os.remove(self.que_file)
os.rename(".que.swp", self.que_file)
print "\n%s added %s to the que" % (self.user, self.dir)
except:
print "No Que File Exists"
time.sleep(1)
#main#
if __name__ == '__main__':
player = MusicPlayer()
player.start()
print "helloWorld"
“helloworld”从不打印到终端。它只是不断循环我的课程。ps - 如果它让你感觉更好,你可以清理我的任何丑陋的命令。记住我是新人。我已经在这几个小时了,并求助于询问。