Python处理大写和小写名称相同的文件

BPm*_*BPm 4 python file lowercase uppercase

我今天刚刚发现:
如果我有一个名为a111的现有文件,并且我想在Python的同一目录中创建一个名为A111的新文件:

f = file('A111', 'w')
f.write('test')
f.close()
Run Code Online (Sandbox Code Playgroud)

它会覆盖我的文件a111而且没有A111 !!
我该如何防止这种情况发生?

wim*_*wim 8

这不是因为python.这是由于你的底层文件系统不区分大小写(我猜你的HFS +是什么?).来自维基百科:

并非所有类Unix系统中的文件系统都区分大小写; 默认情况下,Mac OS X中的HFS +不区分大小写

解决方案是使用区分大小写的文件系统(如果需要)或使用不同的文件名!