以前就在网上看到说python比较简洁,初学后的确觉得有方便之处。就如同对文件进行改名,类型的功能在java中不知不觉就写长了:
import java.io.File;
import java.io.FilenameFilter;
public class Renamer {
public Renamer(String dir){
file = new File(dir);
}
File file ;
FilenameFilter filter = new FilenameFilter(){
@Override
public boolean accept(File dir, String name) {
if(name.endsWith("卷")){
return true;
}
return false;
}
};
private int i = "Fullmetal_Alchemist_Brotherhood_".length();
void renameFile(){
String name;
for(File f: file.listFiles(filter)){
name = f.getName();
f.renameTo(new File(f.getParent() + "\\" + name.substring(i, i+2) + ".jp.ass"));
}
}
public static void main(String[] args){
Renamer r = new Renamer("F:\\钢之炼金术师\\Trine.2_CHS-Gamersky");
r.renameFile();
}
}
而在python中就比较简短清晰:
import os
def changefilenames(dir):
l = list(f for f in os.listdir(dir) if f.endswith("卷"))
for f in l:
os.rename(dir+ f, dir+f[:-1])
changefilenames("d:\\我的漫画\\gy\\")
可能是两者着重于不同的重点的原因吧,python对这些日常的小操作更快捷。