Python 如何打印歌曲索引及其名称?

Python 如何打印歌曲索引及其名称?,python,Python,我正在建立一个人工智能助手,我想添加一个选项,它可以播放音乐,我选择的名字,它只播放特定的歌曲 import os music_dir = "C:\\Users\\Mahdi\\Downloads\\Music" songs = os.listdir(music_dir) input1 = input("Enter the song name: ") print (songs) song = os.startfile(os.path.join(music_

我正在建立一个人工智能助手,我想添加一个选项,它可以播放音乐,我选择的名字,它只播放特定的歌曲

import os
music_dir = "C:\\Users\\Mahdi\\Downloads\\Music"
songs = os.listdir(music_dir)
input1 = input("Enter the song name: ")
print (songs)
song = os.startfile(os.path.join(music_dir, songs[1]))
根据一条有用的评论,我现在将代码更改为:

import os
music_dir = "C:\\Users\\Mahdi\\Downloads\\Music"
songs = os.listdir(music_dir)
for i in range(len(songs)):
    print (songs[i])
input1 = int(input("Enter the song index: "))
song = os.startfile(os.path.join(music_dir, songs[input1]))
当我运行它时,它会向我显示歌曲名的列表,并通过其索引询问我想播放哪首歌曲。 有没有办法也打印索引?例如,当我运行它时,它显示:

0 song name1
1 song name2
...

将您的代码更改为下面的代码段,应该可以正常工作

import os
import sys, subprocess
print(sys.platform)
music_dir = "C:\\Users\\Mahdi\\Downloads\\Music"  
songs = os.listdir(music_dir)
print (songs)
input1 = input("Enter the song name: ")  
opener = "open" if sys.platform == "darwin" else "xdg-open"
subprocess.call([opener, os.path.join(music_dir, input1)])

os.startfile()
不适用于Linux或Mac,仅适用于windows。

您可以使用内置函数打印索引值和歌曲名称,如下所示:

for i, song_name in enumerate(songs):
    print(i, song_name)

您只能选择该目录中的第二首歌曲。(您的索引为1)。你应该把
input1
而不是
songs[1]