重命名目录中的子文件夹而不知道路径的一部分

时间:2019-11-25 00:34:12

标签: python python-3.x recursion rename

问题很简单,尽管我找不到问题的答案。我正在尝试从一个文件夹创建7z文件,该文件的路径由定义的参数确定。问题是,在创建该文件之前,我需要重命名文件夹。幸运的是,该“文件夹”始终具有相同的名称,而最终名称将始终相同。但是问题出在通往那条路的路上。该文件夹始终位于一个名称可以变化的文件夹内(这种情况通常不会发生变化,但从长远来看是不可行的)。 透视一下,这是路线:

carpetamareinicialresultant\\random-folder-that-can-vary\\folder-to-rename

此刻的定义代码如下:

def sevenzipoficial(tipus, cataleg, cançó, edició):
    if not os.path.exists(carpetamareinicial + '\\' + tipus + '\\' + cançó + '\\' + edició + ' - ' + cataleg):
        input('La carpeta inicial escollida no existeix. Pitja Enter per tornar al menú principal...')
        return -1
        menuprincipal = True
    carpetamareinicialresultant = os.path.join(carpetamareinicial, tipus, cançó, edició + ' - ' + cataleg + '\\', 'Discs' + '\\')  # Carpeta on està la música escollida
    carpetamarefinalresultant = os.path.join(carpetamarefinal, tipus, cançó, edició + ' - ' + cataleg + '\\') # Carpeta on es guardarà la música comprimida
    if not os.path.isfile(cataleg + '.7z'):
        print(subprocess.call(['7z', 'a', cataleg, '-p{racer21}', carpetamareinicialresultant]))
    if not os.path.exists(carpetamarefinalresultant):
        os.makedirs(carpetamarefinalresultant)
    if os.path.isfile(carpetamarefinalresultant + '\\' + cataleg + '.7z'):
        os.remove(carpetamarefinalresultant + '\\' + cataleg + '.7z')
    shutil.move(cataleg + '.7z', carpetamarefinalresultant)

PD:另外,使该过程在完成后恢复是一种奖励,但是我想我会是相同的过程,只是要更改一些变量。

0 个答案:

没有答案