我正在开发flask应用程序,并使用pycharm在MacBook上进行大部分开发工作。
最近,我将应用程序部署到了远程服务器并进行了一些测试。远程服务器具有运行python 3.6的Ubuntu 16.04(在MacBook上也运行了相同版本的python)。
现在,每次我在远程服务器上测试某个功能时,服务器的磁盘空间都用完了。这是由我实现的某些文件压缩功能引起的。
这是代码,
local_dir = 'some_path/'
new_zip_file = os.path.join(local_dir, "{}.zip".format('some_name'))
for root, dirs, files in os.walk(local_dir):
with zipfile.ZipFile(new_zip_file, 'w') as new_zip:
for file in files:
new_zip.write(os.path.join(root, file))
在MacBook上,上述代码块按预期工作。它进入指定的文件夹,找到文件,然后将它们压缩到一个新文件中。 zip文件是在找到该zip文件内容的同一文件夹内创建的。
在Ubuntu上,它进入递归状态,导致zip文件爆炸。
现在我知道如何解决ubuntu上的问题,但是我的问题是,为什么在两个不同的OS上行为会发生变化?