0

ディレクトリに 400 個のファイルがあります (.png拡張子付き)。名前から始まり、005.pngまで続き395.pngます。

を使用して名前を変更したいos.rename

os.rename(006.png,005.png)

つまり、すべての数字を 1 つ下に移動したり、ファイルの名前を に変更したり、ファイルの名前005.pngをに004.png変更395.png394.pngたりします。

時間がかかりすぎるため、これを手動で行いたくありません。

os.rename(005.png,004.png)
os.rename(006.png,005.png)
...

これを簡単に行うにはどうすればよいですか?s60 2nd edition FP3を使用しています。

前もって感謝します!

4

3 に答える 3

3

単純なループを使用できます。

for i in xrange(4, 396):
    os.rename(str(i).zfill(3) + ".png", str(i-1).zfill(3) + ".png"))

そしてそれはそれについてです:)

于 2012-08-19T14:00:34.537 に答える
2

ループは確かに最も簡単です。の代わりにstr(i).zfill(3) + ".png"、使用できます

template = "{0:03d}.png"
for i in range(4, 396):
    os.rename(template.format(i), template.format(i-1))
于 2012-08-19T14:13:59.607 に答える
1
import os
path  = r"C:\your_dir"#i've added r for skipping slash , case you are in windows
os.chdir(path)#well here were the problem , before edit you were in different directory and you want  edit file which is in another directory , so you have to change your directory to the same path you wanted to change some of it's file 
files = os.listdir(path)
for file in files:
    name,ext = file.split('.')
    edited_name=str(int(name)-1)
    os.rename(file,edited_name+'.'+ext)

うまくいけば、それはあなたが探しているものです

于 2012-08-19T14:29:38.180 に答える