Bagaimana untuk menamakan semula fail dalam python

青灯夜游
Lepaskan: 2023-03-02 17:24:42
asal
6712 orang telah melayarinya

Dalam python, anda boleh menggunakan fungsi rename() pakej os untuk menamakan semula fail (direktori). Oleh kerana rename() ialah fungsi yang disediakan oleh pakej os, jika anda ingin menggunakan fungsi ini, anda perlu memperkenalkan pakej os terlebih dahulu, dengan sintaks "import os".

Bagaimana untuk menamakan semula fail dalam python

Namakan semula fail

Tampal kod terus:

import os
Salin selepas log masuk
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')
Salin selepas log masuk

ke folder Namakan semula fail dalam pesanan

Apabila memproses gambar pembelajaran mesin, anda perlu memasukkan gambar ke dalam folder yang berbeza mengikut kategori Anda juga ingin menamakan semula gambar dalam kenaikan berangka di bawah folder untuk kemudahan pemprosesan.

Pertama, mari kita lihat fungsi nama semula python:

os.rename(src,dst)
Salin selepas log masuk
  • src: Nama direktori yang akan diubah suai
  • dst: Nama direktori yang diubah suai

Jika dst ialah direktori sedia ada, OSError akan dibuang.

Nota: src dan dst ialah kedua-dua laluan penuh + nama fail

Mula-mula, mari namakan semula folder

Cuba gunakan kaedah paling mudah dahulu

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)
Salin selepas log masuk

Bagaimana untuk menamakan semula fail dalam python

Kita dapat melihat bahawa folder telah dinamakan semula mengikut urutan

Ubahsuai sedikit, nampaknya tidak begitu rendah

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)
Salin selepas log masuk

Bagaimana untuk menamakan semula fail dalam python

Kesannya sama, fungsi enumerate Fungsi tidak akan diterangkan sekali lagi. Kami juga boleh menggunakan zip python untuk mengubah suai:

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)
Salin selepas log masuk

Kesannya adalah sama:

Bagaimana untuk menamakan semula fail dalam python

Seterusnya kita menamakan semula fail

Tiga kaedah di atas semuanya boleh digunakan, dan hanya perlu diubah suai sedikit saya akan menggunakan fungsi enumerate sebagai contoh untuk menunjukkan:

Bagaimana untuk menamakan semula fail dalam python

Buat dokumen teks dahulu

Salin dan tampal sekumpulan mereka untuk ujian, tambah percubaan-kecuali dalam fungsi, Untuk mengelakkan ralat menamakan semula fail, penamaan semula di sini mestilah fail dalam format yang sama, jika tidak, ralat akan dilaporkan:

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)
Salin selepas log masuk

Bagaimana untuk menamakan semula fail dalam python

[Disyorkan Berkaitan: Tutorial video Python3 ]

Atas ialah kandungan terperinci Bagaimana untuk menamakan semula fail dalam python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!