Chat GPT解决工作问题
要使用Python提取一个文件夹下所有.ogg
文件的文件名,并将这些文件名输出到一个文本文件中,你可以使用以下代码:
import os
# 设置文件夹路径
directory = '/path/to/your/directory'
# 设置输出文件的路径
output_file = '/path/to/your/output.txt'
# 创建一个空列表来存储文件名
filenames_without_extension = []
# 遍历文件夹
for filename in os.listdir(directory):
if filename.endswith('.ogg'):
# 提取不带扩展名的文件名
name_without_extension = os.path.splitext(filename)[0]
filenames_without_extension.append(name_without_extension)
# 将提取的文件名写入文件
with open(output_file, 'w') as f:
for name in filenames_without_extension:
f.write("%s\n" % name)
print(f"File names were extracted to {output_file}")
在运行这段代码之前,请确保替换directory
和output_file
变量的值为你的实际文件夹路径和希望输出的文本文件路径。这段脚本会创建一个名为output.txt
的文件,并且包含了指定文件夹下所有.ogg
文件的文件名(不包含扩展名)。每个文件名将被写入一行。
如果您希望在生成的函数中使用 get_path_data
而不是 get_path_data_01
,您可以修改上面提供的脚本中的相关部分。以下是更新后的脚本:
# 首先,定义一个函数,它读取txt文件并返回一个包含所有行的列表
def read_file_lines(filename):
with open(filename, 'r') as file:
return file.read().splitlines()
# 读取文件中的音频文件名
audio_file_names = read_file_lines('audio_files.txt')
# 生成并打印函数定义
for name in audio_file_names:
function_code = f"""def {name}():
resp = SpeechClient.start(get_path_data('{name}.ogg'))
"""
print(function_code)
确保您的文本文件 audio_files.txt
包含了所有需要生成函数的文件名,每个文件名占一行。运行此脚本将会为每个文件名生成一个使用 get_path_data
的函数定义,并将其打印到控制台。
再次强调,在实际使用这些函数之前,请确保您的项目中已经正确定义了 get_path_data
方法以及 SpeechClient
对象,并且您的环境中有权限读取 audio_files.txt
文件。如果您的文本文件或 Python 脚本位于不同的目录中,请提供正确的文件路径。