【发布时间】:2019-07-06 15:40:09
【问题描述】:
所以我有一个文件路径字典,如下所示:
import os
main_path = r'C:\Users\User\Desktop\all python files'
dict_path_old2 = {'A': os.path.join(main_path, 'Alpha') + f'\\filenames.csv',
'B': os.path.join(main_path, 'Beta') + f'\dont have.csv',
'C': os.path.join(main_path, 'Charlie') + f'\\an obvious.csv',
'D': os.path.join(main_path, 'Delta') + f'\pattern.csv',
}
我对处理字符串的高级技术不太熟悉,我正在寻找一种pythonic方法来在字典中每个值的文件名之前插入字符串'copy',以便新字典看起来像这样:
C:\Users\User\Desktop\all python files\Alpha\copy filenames.csv
C:\Users\User\Desktop\all python files\Beta\copy dont have.csv
C:\Users\User\Desktop\all python files\Charlie\copy an obvious.csv
C:\Users\User\Desktop\all python files\Delta\copy pattern.csv
我知道正则表达式可以实现这一点,但我不知道如何并且希望有人向我展示它是如何完成的。如果有比正则表达式更 Python 的方法可以实现相同的目标,请随时向我展示,因为学习更多实现相同目标的方法真是太好了。
提前谢谢你
【问题讨论】:
-
请注意
os.path接受多个位置参数,因此您可以使用os.path.join(main_path, 'Alpha', f'filenames.csv')等等。 -
实际上,不这样做并且包括
\\会破坏可移植性,我认为这是首先使用os.path的全部意义
标签: python regex python-3.x insert filenames