Home > Backend Development > Python Tutorial > How to rename files in python

How to rename files in python

青灯夜游
Release: 2023-03-02 17:24:42
Original
6745 people have browsed it

In python, you can use the rename() function of the os package to rename files (directories). The syntax "os.rename(src_path,dst_path)" can rename the file of src_path to dst_path. Because rename() is a function provided by the os package, if you want to use this function, you need to introduce the os package first, with the syntax "import os".

How to rename files in python

Yes Rename files

Directly paste the code:

import os
Copy after login
srcFile = './actwork/linkFile/allExtLinks - 副本.txt'
dstFile = './actwork/linkFile/allExtLinks - copy.txt'
try:
    os.rename(srcFile,dstFile)
except Exception as e:
    print(e)
    print('rename file fail\r\n')
else:
    print('rename file success\r\n')
Copy after login

Rename the files in the folder in order

When processing machine learning pictures, you need to put the pictures into different folders according to categories. In the folders, you also want to rename the pictures with increasing numbers to facilitate subsequent processing.

First, let’s take a look at python’s rename function:

os.rename(src,dst)
Copy after login
  • src: The directory name to be modified
  • dst: Modified directory name

If dst is an existing directory, OSError will be thrown.

Note: src and dst are both full path file names

First, let’s rename the folder

Use the simplest method to try it first

import os
def myrename(path):
    file_list=os.listdir(path)
    i=0
    for fi in file_list:
        old_name=os.path.join(path,fi)
        new_name=os.path.join(path,str(i))
        os.rename(old_name,new_name)
        i+=1
if __name__=="__main__":
    path="D:/test/121"
    myrename(path)
Copy after login

How to rename files in python

We can see that the folders have been renamed in order

Slightly changed, it seems not so low

import os
def myrename(path):
    file_list=os.listdir(path)
    for i,fi in enumerate(file_list):
        old_name=os.path.join(path,fi)
        new_name=os.path.join(path,"N0."+str(i))
        os.rename(old_name,new_name)
if __name__=="__main__":
    path="D:/test/121"
    myrename(path)
Copy after login

How to rename files in python

The effect is the same, the enumerate function no longer has the effect To go into details, we can also use python zip to make modifications:

import os
def myrename(path):
    file_list=os.listdir(path)
    for i,fi in zip(range(len(file_list)),file_list):
        old_name=os.path.join(path,fi)
        new_name=os.path.join(path,"The."+str(i))
        os.rename(old_name,new_name)
if __name__=="__main__":
    path="D:/test/121"
    myrename(path)
Copy after login

The effect is the same:

How to rename files in python

## Next we Rename files

The above three methods can all be used, just need to be slightly modified. I will use the function enumerate as an example to demonstrate:

How to rename files in python

Create a text document first

Copy and paste a bunch of them for testing. Add a try-except to the function to prevent file renaming errors. Here The rename needs to be a file in the same format, otherwise an error will be reported:

import os
def myrename(path):
    file_list=os.listdir(path)
    for i,fi in enumerate(file_list):
        old_dir=os.path.join(path,fi)
        filename="my"+str(i+1)+"."+str(fi.split(".")[-1])
        new_dir=os.path.join(path,filename)
        try:
            os.rename(old_dir,new_dir)
        except Exception as e:
            print(e)
            print("Failed!")
        else:
            print("SUcess!")
if __name__=="__main__":
    path="D:/test/121"
    myrename(path)
Copy after login

How to rename files in python##[Related recommendations:

Python3 video tutorial

The above is the detailed content of How to rename files in python. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template