Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python复制文件,但如果文件';s已存在于目标目录中_Python_Copy_Shutil - Fatal编程技术网

使用Python复制文件,但如果文件';s已存在于目标目录中

使用Python复制文件,但如果文件';s已存在于目标目录中,python,copy,shutil,Python,Copy,Shutil,我在想如何实现一个函数来克服我的问题时遇到了一个问题 我的代码工作得很好,但缺点是有时我需要不止一个文件 import os import shutil target_dir = 'C:\DIST\WR_4.5\Test' pass_text = 'Test End' def check_and_copy(): log = open('C:\DIST\WR_4.5\oHistory2.log') for line in log: if pass_text in line:

我在想如何实现一个函数来克服我的问题时遇到了一个问题

我的代码工作得很好,但缺点是有时我需要不止一个文件

import os
import shutil


target_dir = 'C:\DIST\WR_4.5\Test'
pass_text = 'Test End'

def check_and_copy():
log = open('C:\DIST\WR_4.5\oHistory2.log')
for line in log:
    if pass_text in line:
        name = '\kp.log'
    else:
        name = '\kf.log'
if not os.path.exists(target_dir):
    os.makedirs(target_dir)
    shutil.copy2('C:\DIST\WR_4.5\oHistory2.log', target_dir+name)
else:
    os.chdir(target_dir)
    shutil.copy2('C:\DIST\WR_4.5\oHistory2.log', target_dir+name)
我想完成的是能够在使用或不使用shutil的情况下复制多个文件实例。正如您所看到的,文件名由代码本身决定


提前感谢您的帮助。

查看
'x'
标志以
打开
-这应该尝试创建文件,但如果文件已存在,则引发
文件存在错误
:我需要同一文件的多个实例。e、 g.:-kp.log-kp2.log-kp3.log所以我需要的是一个方法,这样我就可以在同一个目录中复制我的源文件多次,而不必覆盖第一个。