我想我已经解决了这个问题。编写了一个Pyhon脚本来重命名文件,但是它删除了文件而不是重命名它们。我在这里做错了什么?我已经解决了重命名的问题。有人可以告诉我为什么下面的if语句现在现在仅提取以“ New”开头的文件吗?
#! /usr/bin/python
import os
import datetime
import glob
now = datetime.datetime.now()
#store date in string variable
dateStr = str(now.strftime('%Y%m%d-'))
src = r"C:\Users\username\Downloads"
for file in glob.glob(os.path.join(src, '*.txt')):
#Grab the basename
fileName = os.path.basename(file)
newName = src + "\\" + dateStr + fileName
#THIS if statement does not work
#if fileName.startswith("New"):
os.rename(file, newName)
print(newName)
任何人都可以建议为什么上述if语句不起作用吗?
答案 0 :(得分:0)
(我在计算机上运行了此文件,因此文件名与您的文件名不匹配)
在for语句中,变量“ file”是完整路径,文件名类似于
C:\Users\Philip\Downloads\PROGIDS-ON-THIS-COMPUTER.txt
且未更改
因此,当“ if”语句检查其是否以“ New”开头时,它永远不会匹配
you probably want to change to use 'fileName' instead