我对编程相当陌生,想要通过循环和搜索关键字来从文件夹中的所有文件名中删除某个关键字,例如“website.com”。请帮忙......提前谢谢!
这是我到目前为止编写的一些用于循环文件的代码。
import os
rootdir = r'C:\Users\Hemant\Desktop\testfiles'
for subdir, dirs, files in os.walk(rootdir):
for file in files:
print(os.path.join(subdir, file))
Run Code Online (Sandbox Code Playgroud)
更新:
感谢 kponz.....我更新的代码是 import os rootdir = r'C:\Users\Hemant\Desktop\myfiles' str = " text" for filename in os.listdir(rootdir): if str in filename: os .rename(filename, filename.replace(str, "")) else: 继续
但现在我收到以下错误 os.rename(filename, filename.replace(str, "")) FileNotFoundError: [WinError 2] 系统找不到指定的文件: 'even more text.txt' -> 'even more 。TXT'
我试图从名为:的文件中删除“文本”一词
even more text.txt
some text.txt
much more text.txt
Run Code Online (Sandbox Code Playgroud)
要替换特定关键字,您可以使用字符串替换函数:
import os
rootdir = r'C:\Users\Hemant\Desktop\testfiles'
str = "example.com"
for filename in os.listdir(rootdir):
if str in filename:
filepath = os.path.join(rootdir, filename)
newfilepath = os.path.join(rootdir, filename.replace(str, ""))
os.rename(filepath, newfilepath)
Run Code Online (Sandbox Code Playgroud)