newest = max(file , key = os.path.getctime)
这将迭代文件名中的字符而不是文件列表.
你正在做的事情max("usdfdsf.xls", key = os.path.getctime)
而不是max(["usdfdsf.xls", ...], key = os.path.getctime)
你可能想要这样的东西
files = [x for x in os.listdir('E:\\Downloads') if x.endswith(".xls")] newest = max(files , key = os.path.getctime) print "Recently modified Docs",newest
您可能还希望改进脚本,以便在您不在Downloads目录中时它可以工作:
files = [os.path.join('E:\\Downloads', x) for x in os.listdir('E:\\Downloads') if x.endswith(".xls")]