如何使用python打开文件?

时间:2019-07-09 03:21:48

标签: python python-3.x

我正在尝试使用python打开随机mp3文件,以便可以从音乐播放列表中播放随机歌曲。

这是我尝试过的代码的两种变体

setSlideActive

file = str('C:\file.mp3')
open(file)

运行该程序时,我希望看到Microsoft mp3播放器打开并播放该文件,但是我收到一条弹出消息,提示open('C:\file.mp3')

我以前从未使用过"Unicode error: 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape".,所以如果这很简单,那么我很抱歉。

2 个答案:

答案 0 :(得分:4)

始终将原始字符串用于Windows文件路径(和正则表达式)。否则,名称以U(例如C:\Users)开头的文件夹看起来像是Unicode转义的开始;许多其他字符最终也被解释为转义符(例如f被转义为换页符)。

使用原始字符串(前缀为r)意味着反斜杠只能转义引号字符,而没有其他字符。所以:

with open(r'C:\file.mp3') as f:

有效,其中:

with open('C:\file.mp3') as f:

不会。也就是说,这些都不会在您的音乐播放器中打开文件。 open打开原始文件以读取原始数据(如果您尝试以文本模式读取原始文件,则奇数为mp3的文件会出错,除非您使用的是更宽松的编解码器之一,例如{ {1}})。如果您想通过默认处理程序that's what os.startfile is for 启动文件,例如:

latin-1

答案 1 :(得分:1)

此问题曾被问过。指向文档can be found here

的链接

请参阅Can Python Open a MP3 File

您可以使用内置的os库:

import os
os.startfile('my_mp3.mp3')