Python 从一个文件夹重写另一个文件夹中的文件并重命名它们

Python 从一个文件夹重写另一个文件夹中的文件并重命名它们,python,file,Python,File,一个简短的问题。我桌面上的tester文件夹中有多个文件。现在我想重写所有这些文件,在文件名末尾添加“moved”,并将它们移动到我桌面上名为tester1的新文件夹中。有人知道吗?先谢谢你。这是我当前的代码: source = r'c:\data\AS\Desktop\tester' #Take the absolute filepaths from all the files in tester and open them. for file in os.listdir(source):

一个简短的问题。我桌面上的tester文件夹中有多个文件。现在我想重写所有这些文件,在文件名末尾添加“moved”,并将它们移动到我桌面上名为tester1的新文件夹中。有人知道吗?先谢谢你。这是我当前的代码:

source = r'c:\data\AS\Desktop\tester'

#Take the absolute filepaths from all the files in tester and open them.
for file in os.listdir(source):
    file_paths = os.path.join(source, file)
    with open(file_paths, 'r') as rf:
        print(rf.read() + '\n')

以下是您可以使用的:-

import os
SourceFile="C:/Myfolder/Source/MyFile.txt"
TargetFile="C:/MyFolder/Target/MyFile_moved.txt"
os.rename(SourceFile,TargetFile)

希望对您有所帮助。

如果您的文件中有扩展名,并且希望在扩展名之前添加“已移动”,则以下代码将起作用:

导入操作系统
进口舒蒂尔
src_path=“c:/data/AS/Desktop/tester/”
dest_path=“c:/data/AS/Desktop/tester1/”
对于os.listdir(src_路径)中的文件:
文件名,扩展名=file.split(“.”)
move(src_路径+文件,dest_路径+文件名+“moved.”扩展名)
如果文件中没有扩展名,则可以按如下方式更改代码:

导入操作系统
进口舒蒂尔
src_path=“c:/data/AS/Desktop/tester/”
dest_path=“c:/data/AS/Desktop/tester1/”
对于os.listdir(src\u路径)中的文件名:
移动(src\u路径+文件名,dest\u路径+文件名+移动”)

我已在MacOS中对此进行了检查,如果您在Windows中遇到任何问题,请在评论中告诉我。

这是否回答了您的问题?它没有我的那么具体:(与其读取文件,然后将内容写入新文件,不如执行普通的文件复制/重命名操作:您想重写文件,或者只是用修改后的名称将其移动到新位置?我想用修改后的名称将其移动到新位置。我使用了您的第二段代码,这似乎非常符合逻辑,但出现以下错误:[错误2]没有这样的文件或目录:你现在能检查一下吗,我刚刚解决了路径的问题。现在它成功了,非常感谢!但是你到底做了什么改变或做了什么使它工作呢?我把反斜杠改成了正斜杠,并且在路径的末尾又加了一个斜杠。你为什么选择更改那些斜杠?难道不可能使用路径名前的“r”?出现以下错误:[WinError 2]系统找不到指定的文件:我已更新代码,为您提供完整示例,以便您可以尝试。出现错误的原因可能是路径或文件不存在(很可能是路径)。您可以使用“\”而不是“/”。请检查一下。无论如何,谢谢你,但我使用了上面的答案,这使多个文件成为可能。没有问题。很高兴听到你找到了一个适合你的解决方案。