Python:如何正确拼接CSV文件名并保存为指定格式(如15ws.csv)
解决方法
你的代码问题出在文件名拼接的写法错误,导致生成了不符合预期的文件名。以下是两种可行的修正方案:
方案一:直接字符串替换
这种方法简单直接,适合固定后缀的场景:
fname = r"15.csv" # 将原文件名的".csv"替换为"ws.csv" new_fname = fname.replace(".csv", "ws.csv") # 打开新文件写入,用with语句自动管理文件关闭 with open(new_fname, 'a') as ap: ap.write(" " + r)
方案二:使用os模块处理文件名(更健壮)
如果需要适配不同的文件后缀,用os.path.splitext分离文件名和扩展名的方式更可靠:
import os fname = r"15.csv" # 分离文件名和后缀(得到name="15", ext=".csv") name, ext = os.path.splitext(fname) # 拼接成新文件名"15ws.csv" new_fname = f"{name}ws{ext}" # 使用with语句自动管理文件关闭 with open(new_fname, 'a') as ap: ap.write(" " + r)
补充:推荐使用
with语句操作文件,它会在代码块结束后自动关闭文件,避免手动关闭可能出现的遗漏问题。
内容的提问来源于stack exchange,提问作者The Flain
相关产品推荐
相关产品推荐

