【问题标题】:python compare and replace strings in txt file with filenamespython比较并用文件名替换txt文件中的字符串
【发布时间】:2015-07-06 19:08:37
【问题描述】:

我有一个文件 data.txt 和一个带有 mp3 音乐文件的 sounds 文件夹。

data.txt 包含来自声音文件夹和其他文件夹的filenames.mp3 列表(按random 顺序)。

我已将sounds 文件夹中的mp3 文件转换为wav,并且我想将data.txt 中的filenames.mp3 替换为仅来自sounds 文件夹的相同filenames.wav

例如:D:\sounds\data.txt 包含这些行

`01_Track.mp3 24
01_artist_name-song_name.mp3 80
02_Track.mp3 16
02_artist_name-song_name.mp3 16
03_artist_name-song_name.mp3 24
01_random_song.mp3 33
02_random_song.mp3 12
03_Track.mp3 90
03_random_song.mp3 36`

D:\sounds\ 现在包含以下文件

`01_Track.wav
02_Track.wav
03_Track.wav`

D:\sounds\data.txt我想用.wav替换D:\sounds\中匹配文件名的.mp3扩展名

【问题讨论】:

    标签: python list replace compare filenames


    【解决方案1】:
    import os
    
    with open("data.txt") as infile:
        for line in infile:
            line = line.strip()
            if os.path.isfile(os.path.join("sounds", line)):
                os.rename(os.path.join("sounds", line), os.path.join("sounds", os.path.splitext(line)[0] + '.wav'))
    

    【讨论】:

      猜你喜欢
      • 2015-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-29
      相关资源
      最近更新 更多