def csv_rel2abs_path_convertor(csv_filenames: str, delimiter: str=' ', encoding='utf8') -> None:
"""
Convert relative paths into absolute paths
:param csv_filenames: filename of csv
:param delimiter: character to delimit felds in csv
:param encoding: encoding format of csv file
:return:
"""
for filename in tqdm(csv_filenames):
absolute_path, basename = os.path.split(os.path.abspath(filename))
relative_paths = list()
labels = list()
# Reading CSV
with open(filename, 'r', encoding=encoding) as f:
csvreader = csv.reader(f, delimiter=delimiter)
for row in csvreader:
relative_paths.append(row[0])
labels.append(row[1])
# Writing converted_paths CSV
export_filename = os.path.join(absolute_path, '{}_abs{}'.format(*os.path.splitext(basename)))
with open(export_filename, 'w', encoding=encoding) as f:
csvwriter = csv.writer(f, delimiter=delimiter)
for i in trange(0, len(relative_paths)):
csvwriter.writerow([os.path.abspath(os.path.join(absolute_path, relative_paths[i])), labels[i]])
评论列表
文章目录