如何使用Python 3从文件夹/目录搜索和播放mp3文件?

我想编写一个python代码,当给出一个字符串(要搜索的mp3文件的名称)时,它会搜索与文件名匹配的给定字符串的目录。找到后,它会打开并播放它。如何使用Python 3从文件夹/目录搜索和播放mp3文件?

我有一个代码来搜索给定的目录给定的字符串。是否可以修改此代码以实现上述任务?谢谢。 `

#Import os module 

import os

# Ask the user to enter string to search

search_path = input("Enter directory path to search : ")

file_type = input("File Type : ")

search_str = input("Enter the search string : ")

# Append a directory separator if not already present

if not (search_path.endswith("/") or search_path.endswith("\\")):

search_path = search_path + "/"

# If path does not exist, set search path to current directory

if not os.path.exists(search_path):

search_path ="."

# Repeat for each file in the directory

for fname in os.listdir(path=search_path):

# Apply file type filter

if fname.endswith(file_type):

# Open file for reading

fo = open(search_path + fname)

# Read the first line from the file

line = fo.readline()

# Initialize counter for line number

line_no = 1

# Loop until EOF

while line != '' :

# Search for string in line

index = line.find(search_str)

if (index != -1) :

print(fname, "[", line_no, ",", index, "] ", line, sep="")

# Read next line

line = fo.readline()

# Increment line counter

line_no += 1

# Close the files

fo.close()

回答:

这段代码有点不同,但对上述问题最好。

!/usr/bin/env python3

import os

import random

import sys

rdm = raw_input("Would you let me make a choice? 0 or 1: ")

#cur_dir = os.getcwd()

if rdm == '1':

print("Playing random song")

folder=os.listdir(os.getcwd()) #To randomly play a song

file=random.choice(folder)

ext3=['.mp3']

print('First random pick: '+file)

while file[-4:] not in ext3 :

print('Not an MP3 file : '+file)

file=random.choice(folder)

else:

os.startfile(file)

print('Song name: '+file)

sys.exit()

else:

if rdm == '0':

file_name = raw_input("File Name: ") #file to be searched

#cur_dir = raw_input("Search Directory: ") # Dir from where search starts can be replaced with any path

cur_dir = os.getcwd()

while True:

file_list = os.listdir(cur_dir)

parent_dir = os.path.dirname(cur_dir)

if file_name in file_list:

print ("File Exists in: "), cur_dir

#

os.startfile(file_name)

#

break

else:

if cur_dir == parent_dir: #if dir is root dir

print ("File not found")

break

else:

cur_dir = parent_dir

以上是 如何使用Python 3从文件夹/目录搜索和播放mp3文件? 的全部内容, 来源链接: utcz.com/qa/261239.html

回到顶部