Last active
April 8, 2020 06:09
-
-
Save Qman11010101/cd328dd99e2b9c2e0ffd5005dd2efa4d to your computer and use it in GitHub Desktop.
Python×VLCでイントロクイズ
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# VLC media playerをインストールした後、pip install python-vlcしてください。 | |
import glob | |
import os | |
import random | |
import time | |
import vlc | |
player = vlc.MediaPlayer() | |
print("イントロクイズ!") | |
print("曲名の一部を入力してね!部分一致で判定するよ!") | |
print("曲が流れる時間は10秒だよ!") | |
print("どうしてもわからなかったら「giveup」と入力してね!") | |
print("曲名が2文字以下の場合を除いて、入力された文字数が2文字以下の場合は反応しないよ!") | |
music_count = 1 | |
musics = glob.glob("*") | |
while True: | |
# ファイル選択・再生 | |
if musics == []: | |
break | |
else: | |
while True: | |
filename = random.choice(musics) | |
if filename.endswith(".py") or filename.endswith(".txt") or filename.startswith("AlbumArt_") or "Folder" in filename: | |
musics.pop(musics.index(filename)) | |
else: | |
musics.pop(musics.index(filename)) | |
break | |
music_name = os.path.splitext(os.path.basename(filename))[0] | |
player.set_mrl(filename) | |
player.play() | |
print(f"{music_count}曲目を再生中…") | |
time.sleep(10) | |
player.stop() | |
print("さあ、曲名を入力してね!") | |
while True: | |
answer = input(">> ") | |
if len(answer) >= min(3, len(filename)): | |
if answer == music_name: | |
print("パーフェクト!すごいね!") | |
break | |
elif answer in music_name: | |
print("正解!おめでとう!") | |
break | |
elif answer == "giveup": | |
print("ナイストライ!") | |
break | |
else: | |
print("残念!不正解!") | |
else: | |
print(f"{min(3, len(filename))}文字以上入力しようね!") | |
print(f"正解は「{music_name}」でした!") | |
music_count += 1 | |
print("全曲が終了したよ!おつかれさま!") |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment