Python创建文件时设置大写文件名不生效问题求助
问题原因及解决办法
核心原因
你的代码逻辑没有问题——终端输出的全大写文件名已经证明这一点,问题出在Windows系统的文件系统特性上:
- Windows的NTFS文件系统默认是大小写不敏感但保留大小写的,也就是说系统会把
JAN2023.csv和Jan2023.csv视为同一个文件,但会保留文件创建时的大小写格式。 - 如果目标目录之前存在过仅大小写不同的同名文件(比如
Jan2023_HelloWorld_Data.csv),即使你删除了它,系统可能还残留着旧文件名的缓存,导致新创建的全大写文件显示旧的大小写样式。
解决步骤
- 验证真实文件名:打开CMD,进入目标文件夹,执行
dir /x命令,查看文件的真实名称(长名称列会显示实际创建的大小写),确认文件本身确实是全大写的。 - 刷新/重启:关闭文件资源管理器再重新打开,按F5刷新目录;如果还是不行,重启电脑清除系统缓存。
- 清理旧缓存残留:如果之前有同名文件,先创建一个临时文件名的文件,删除原文件后再重命名为全大写的目标文件名,强制覆盖系统缓存。
- 代码验证:可以在代码里加一行,直接读取目标目录的文件列表,确认真实文件名:
import os # 在创建文件后添加 target_dir = "你的目标目录路径" print("目录内真实文件名:", os.listdir(target_dir))
内容的提问来源于stack exchange,提问作者King
相关产品推荐
相关产品推荐

