我今天才发现:
如果我有一个名为 a111 的现有文件,并且我想在与 Python 相同的目录中创建一个名为 A111 的新文件:
f = file('A111', 'w')
f.write('test')
f.close()
它将覆盖我的文件 a111 而没有 A111!!
我如何防止这种情况发生?
最佳答案
这不是因为python。这是由于您的底层文件系统不区分大小写(我猜您的情况是 HFS+?)。来自 wikipedia :
Not all file systems in Unix-like systems are case-sensitive; by default, HFS+ in Mac OS X is case-insensitive
解决方案是使用区分大小写的文件系统,如果需要的话,或者使用不同的文件名!
关于Python 将大写和小写名称的文件视为相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9203879/