Я пытаюсь открыть случайный mp3-файл с помощью python, чтобы воспроизвести случайную песню из моего музыкального плейлиста.
это два варианта кода, которые я пробовал
file = str('C:\file.mp3')
open(file)
или
open('C:\file.mp3')
Когда я запускаю программу, я ожидаю, что откроется mp3-плеер Microsoft и воспроизведется файл, но вместо этого я получаю всплывающее сообщение с надписью "Unicode error: 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape".
Я никогда раньше не использовал open(), поэтому, если это что-то очень простое, извините.
в некоторых системах вы можете использовать import webbrowser; webbrowser.open(filename) чтобы открыть этот файл программой по умолчанию в системе. Если вам нужно открыть в другой программе, вам может понадобиться os.system("your_player.exe your_file.mp3")






Всегда используйте необработанные строки для путей к файлам Windows (и регулярных выражений). В противном случае папка, имя которой начинается с U (скажем, C:\Users), в конечном итоге выглядит как начало escape-последовательности Unicode; многие другие символы в конечном итоге также интерпретируются как escape-последовательности (например, f экранируется символом перевода формы).
Использование необработанных строк (с префиксом r) означает, что обратная косая черта экранирует только символ кавычки и ничего больше. Так:
with open(r'C:\file.mp3') as f:
работает, где:
with open('C:\file.mp3') as f:
не будет. Тем не менее, ничто из этого не откроет файл в вашем музыкальном проигрывателе. open открывает необработанный файл для чтения данных из него (скорее всего, файл mp3 выдаст ошибку, если вы попытаетесь прочитать его в текстовом режиме, если только вы не используете один из более разрешительных кодеков, например latin-1). Если вы хотите запуск файла через его обработчик по умолчанию, это то, что os.startfile для, например:
os.startfile(r'C:\file.mp3')
Этот вопрос уже задавался. Ссылка на документацию можно найти здесь
См. Может ли Python открыть файл MP3.
Вы можете использовать встроенную библиотеку os:
import os
os.startfile('my_mp3.mp3')
«Я ожидаю, что откроется mp3-плеер Microsoft», почему? Также документация -> docs.python.org/3/library/functions.html#open