Я создал программу, которая транслируется через твиттер и основана на результате генерируемых твитами, которые он воспроизводит музыку, используя библиотеку pygame. Ниже приведен образец моего кода.Threading multiple functions in python
class listener(StreamListener):
def on_status(self, status):
global mood_happy, mood_sad, mood_angry, mood_shocked, mood_romantic
try:
# print status
tweet_text = status.text
for mood_n_score in [[happy, 'mood_happy'], [sad, 'mood_sad'], [angry, 'mood_angry'],
[shocked, 'mood_shocked'], [romantic, 'mood_romantic']]:
lst_mood = mood_n_score[0]
type_mood = mood_n_score[1]
for mood in lst_mood:
if mood in tweet_text:
if type_mood == 'mood_happy':
mood_happy += 1
elif type_mood == 'mood_sad':
mood_sad += 1
elif type_mood == 'mood_angry':
mood_angry += 1
elif type_mood == 'mood_shocked':
mood_shocked += 1
else:
mood_romantic += 1
break
print('\n----------------')
print 'mood_happy:', mood_happy
print 'mood_sad:', mood_sad
print 'mood_angry:', mood_angry
print 'mood_shocked:', mood_shocked
print 'mood_romantic:', mood_romantic
top_mood=max(mood_happy,mood_sad,mood_angry,mood_shocked,mood_romantic)
if top_mood==mood_happy:
print "the mood is: happy"
pygame.mixer.music.load(file.mp3)
pygame.mixer.music.play()
Как вы можете видеть, у меня есть класс кос, который потоки через твиттер непрерывно и печатает верхнее настроение. Когда я запускаю свой код для воспроизведения mp3-файла, потоковая передача останавливается и воспроизводится только музыка. Как я могу сделать свой поток программы через твиттер и играть музыку одновременно?
Спасибо!
Эй, спасибо за ваш ответ! :) Не могли бы вы объяснить мне, что делают последние две части кода? –
Какая часть? Где я создаю 'streaming_thread',' new_mood_event.wait() 'then' new_mood_event.clear()' или модифицированный код pygame? – Terrence
От __name___ == __ 'main' __: до последней строки. Я действительно не понимаю потоки, поэтому это кажется мне чуждым. : p –