Python 将文件名从大写重命名为小写

Python 将文件名从大写重命名为小写,python,python-3.x,Python,Python 3.x,我想将文件名中的所有大写字母重命名为小写字母 我的文件结构 p:\TeSt\001-Movie.txt p:\TeSt\002-moVie.txt p:\TeSt\003-Pics.txt p:\TeSt\004-KKKFLfasf.txt 这就是它应该看起来的样子 p:\TeSt\001-movie.txt p:\TeSt\002-movie.txt p:\TeSt\003-pics.txt p:\TeSt\004-kkkflfasf.txt 但是,不应重命名该文件夹 import os

我想将文件名中的所有大写字母重命名为小写字母

我的文件结构

p:\TeSt\001-Movie.txt
p:\TeSt\002-moVie.txt
p:\TeSt\003-Pics.txt
p:\TeSt\004-KKKFLfasf.txt
这就是它应该看起来的样子

p:\TeSt\001-movie.txt
p:\TeSt\002-movie.txt
p:\TeSt\003-pics.txt
p:\TeSt\004-kkkflfasf.txt
但是,不应重命名该文件夹

import os
path = 'p:\TeSt'
for file in os.listdir():
    os.rename(file, file.lower())
then = os.listdir()

但是我遇到了一个错误,文件没有重命名。

您只需要给出文件的完整路径并将其传递给重命名函数,它应该可以工作

请尝试以下代码:

import os

path = 'p:/TeSt/'

for file in os.listdir(path):
    os.rename(path + file, path + file.lower())

then = os.listdir(path)
print(then)
输出:

['001-movie.txt', '004-kkkflfasf.txt', '002-movie.txt', '003-pics.txt']

注意:使用Forwadslash(
/
)是为了避免使用(
\
)这是python中的一个特殊字符。在windows中,您始终可以将
/
替换为
\

请注意,您也可以在windows上使用前斜杠-所有windows版本(以及支持path-2.0或更高版本的MSDOS版本)将在代码中使用/作为路径分隔符,而不是在命令行上。