回复 楼主 打球的渔夫
PATH没有用导致的。因为你没用全名,全名是路径+文件名,否则就是相对路径,当然找不到目标。更何况你最开始os.listdir里面根本没给正确的地址……
我个人……建议你先踏实看一下Python的官方文档……不是装笔……里面有特别详细的介绍,看懂了你就不会不清楚为啥listdir给了名字却没有办法直接用在rename里了……
代码仅供参考:
程序代码:
import os
#所有扩展名都压在里面
EXTENTIONS = [".jpg",".jpeg"]
#只获取扩展名
def get_ext_name(filename):
return os.path.splitext(filename)[1]
#只获取全名
def get_full_name(path, filename):
if(path.endswith("\\")):
return path+os.path.splitext(filename)[0]
else:
return path+"\\"+filename
#改名
def filename_mod(path):
filelst = os.listdir(path)
for filename in filelst:
if get_ext_name(filename) in EXTENTIONS:
fullname = get_full_name(path,filename)
os.rename(fullname,fullname+".zip")
另外,看来看去发现几个问题:
1、标识太单一,扩展麻烦
2、所有代码一股脑都写在了一起不好发现和单独处理问题
3、前后只是改了扩展名,没必要引用多余的模块
[此贴子已经被作者于2017-4-24 10:26编辑过]