Python: сравнить имя файла после удаления некоторых символов из имени - PullRequest
1 голос
/ 26 апреля 2019

Python:

Я пытаюсь сравнить имена файлов в каталоге после удаления некоторых n символов из имени.Если имя файла существует после полосы, то оно добавит число в конец имени.

Я создал код, который переименовывает все имена файлов в каталоге, но у меня возникают проблемы при попытке выполнить сравнение И ТОГДА переименование из-за существующего того же имени файла после полосы.

import os 

def main(): 
    i = 0

    for filename in os.listdir("C:\\Users\User\Desktop\Tests"): 

        try:
            dirName != filename
            print (filename)

        except dirName == filename:
            dst ="dup" + str(i) + ".txt"
            src = dirName 
            dst ='Test'+ dst

        # rename() function will 
        # rename all the files 
            os.rename(src, dst) 
            i += 1

# Driver Code 
if __name__ == '__main__': 

    # Calling main() function 
    main() 

Я могу переименовать файлы напрямую, но не могу сделать сравнение с именами файлов, затем переименовываем, если это имя совпадает.Новое в питоне!

1 Ответ

0 голосов
/ 26 апреля 2019
def main():
    i = 0
    for root, dirs, files in os.walk("C:\\Users\User\Desktop\Tests"):
             for filename in files:
                for filename2 in files :
                    if filename != filename2: # if your file name is not repetitious you will pass it and compare next one 
                        #print(filename)
                        continue
                # if a repetitious filename found your code for rename it will come up
                dst ="dup" + str(i) + ".txt"
                src = filename 
                dst ='Test'+ dst
                os.rename(src, dst)
...