- 基于 Udacity 的 Python 入门课程 Programming Foundations with Python
- 基于 Python 2.7
思路
Project 2 是一个去除文件名中所有数字的小工具。既然能对文件重命名,那么能不能实现用正则表达式重命名呢?
代码
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os
import re
#修改工作路径
o_dir = os.getcwd() #保存初始路径
dir = raw_input("Input the working dir: ").strip()
os.chdir(dir)
print "Current Working Dir: " + os.getcwd()
file_list = os.listdir(dir)
#打印目录下文件/文件夹
print ">>> Pre >>>"
for filename in file_list:
print filename
cho = raw_input("Are You Sure? (Y/N)").strip()
#实现正则表达式重命名
str1 = raw_input("Find:")
str2 = raw_input("Replace With:")
for filename in file_list:
str0 = filename
str10 = re.sub(str1, str2, str0)
os.rename(filename, str10)
#打印目录下文件/文件夹
print ">>> Next >>>"
for filename in os.listdir(dir):
print filename