从 CSV 中读取文件名,然后将文件复制到不同的目录 - 第 2 部分
Read filenames from CSV and then copy the files to different directory -part 2
我正在尝试编写一个 python 代码来读取 csv,读取后在目录中查找文件,然后将文件移动到目标文件夹。我正在使用 Python 3.6.
我有同样的问题,在此处的代码中定义:Read filenames from CSV and then copy the files to different directory
我尝试了那里的方法,但是当我 运行 这个代码时它说不是 这样的文件或目录
下面是我修改的代码,在他们使用 agrv 的代码中,但我正在定义路径...
import os
import shutil
import csv
import sys
csv_file = "maharera.csv"
existing_path_prefix = "D:\maharera"
new_path_prefix = "D:\movement"
with open(csv_file, 'r') as f:
reader = csv.reader(f)
for row in reader:
filename = row[0]
filepath = row[1]
new_filename = os.path.join(new_path_prefix, filename)
shutil.copy(filepath, new_filename)
我正在尝试将文件从 d 驱动器移动到驱动器,但在不同的文件夹中,但文件应该与 csv 文件相同..
此处附有 CSVhttps://www.dropbox.com/s/0t9skcuje6jyew1/maharera.csv?dl=0
在 csv 中有两列,一列是文件名,另一列是当前目的地,它们现在保存在哪里...
代码中提到了新的目的地
在您的代码中发现了两个错误。
您包含了 csv 文件的 header/first 行。
您正在尝试复制文件的文件夹而不是文件本身。
为避免错误,您可以尝试
with open(csv_file, 'r') as f:
reader = csv.reader(f)
for i, row in enumerate(reader):
if i == 0:
pass # Skip header row
else:
filename, filepath = row
new_filename = os.path.join(new_path_prefix, filename)
old_filename = os.path.join(filepath, filename)
shutil.copy(old_filename, new_filename)
我正在尝试编写一个 python 代码来读取 csv,读取后在目录中查找文件,然后将文件移动到目标文件夹。我正在使用 Python 3.6.
我有同样的问题,在此处的代码中定义:Read filenames from CSV and then copy the files to different directory
我尝试了那里的方法,但是当我 运行 这个代码时它说不是 这样的文件或目录
下面是我修改的代码,在他们使用 agrv 的代码中,但我正在定义路径...
import os
import shutil
import csv
import sys
csv_file = "maharera.csv"
existing_path_prefix = "D:\maharera"
new_path_prefix = "D:\movement"
with open(csv_file, 'r') as f:
reader = csv.reader(f)
for row in reader:
filename = row[0]
filepath = row[1]
new_filename = os.path.join(new_path_prefix, filename)
shutil.copy(filepath, new_filename)
我正在尝试将文件从 d 驱动器移动到驱动器,但在不同的文件夹中,但文件应该与 csv 文件相同..
此处附有 CSVhttps://www.dropbox.com/s/0t9skcuje6jyew1/maharera.csv?dl=0
在 csv 中有两列,一列是文件名,另一列是当前目的地,它们现在保存在哪里...
代码中提到了新的目的地
在您的代码中发现了两个错误。
您包含了 csv 文件的 header/first 行。
您正在尝试复制文件的文件夹而不是文件本身。
为避免错误,您可以尝试
with open(csv_file, 'r') as f:
reader = csv.reader(f)
for i, row in enumerate(reader):
if i == 0:
pass # Skip header row
else:
filename, filepath = row
new_filename = os.path.join(new_path_prefix, filename)
old_filename = os.path.join(filepath, filename)
shutil.copy(old_filename, new_filename)