我正在尝试执行两项操作:
.txt文件存储以下代码:
111081
112054
112051
112064
这就是我的尝试:
from glob import glob
from shutil import copyfile
import os
input = 'C:/Users/xxxx/ids.txt'
input_folder = 'C:/Users/xxxx/input/'
dest_folder = 'C:/Users/xxxx/output/'
with open(input) as f:
for line in f:
string = "fixed_prefix_" + str(line.strip()) + '.asc'
if os.path.isfile(string):
copyfile(string, dest_folder)
string
变量生成此(例如):
print string
fixed_prefix_111081.asc
然后,我确定搜索和将文件复制到目标文件夹时还有其他问题。主要问题是我不知道如何在fixed_prefix_111081.asc
中搜索input_folder
文件。
答案 0 :(得分:2)
copyfile
期望文件名为目的地。传递现有目录的情况是它不起作用。使用copy
处理两种情况(目标目录或目标文件)input_folder
或os.path.isfile
,False
我的修正提案:
with open(input) as f:
for line in f:
string = "fixed_prefix_{}.asc".format(line.strip())
fp_string = os.path.join(input_folder,string)
if os.path.isfile(fp_string):
copy(fp_string, dest_folder)