合并月度TXT文件为半年度文件时,如何仅一处修改文件名前缀?
解决方案
只需要通过定义一个前缀变量,配合Python的格式化字符串(f-string)就能实现一处修改适配所有前缀,修改后的代码如下:
# 定义前缀变量,仅需修改这一行即可切换不同前缀 etf_prefix = "FXE" year = "2022" months = ["01", "02", "03", "04", "05", "06"] # 自动生成月度文件名列表,无需手动逐个编写 filenames = [f"{etf_prefix}_{year}_{month}.txt" for month in months] # 生成半年度合并后的输出文件名 output_filename = f"{etf_prefix}_{year}_01_to_06.txt" # 写入合并文件 with open(output_filename, 'w') as outfile: for name in filenames: with open(name) as infile: outfile.write(infile.read()) # 每个文件内容后添加换行,避免内容粘连 outfile.write("\n")
关键说明
- 所有用到前缀的地方都通过
etf_prefix变量引用,要换前缀时只需要修改第一行的变量值 - 用列表推导式自动生成文件名列表,减少手动重复输入的工作量和出错概率
- 输出文件名同样通过变量拼接生成,保证和前缀完全一致
内容的提问来源于stack exchange,提问作者Iniquuis Orbis
相关产品推荐
相关产品推荐

