Как распаковать папку, полную.gz файлов, используя python? Или другой метод, который будет работать на Windows?
У меня есть папка, полная файлов банка данных белка, которые сохранены как.gz. Например, "1AG9.pdb1.gz", и мне нужно превратить их всех в "1AG9.pdb1".
Я могу сделать это по одному, используя этот код:
import gzip
import shutil
with gzip.open('1AG9.pdb1.gz', 'rb') as f_in:
with open('1AG9.pdb1', 'wb') as f_out:
shutil.copyfileobj(f_in, f_out)
Но у меня есть папка с 2300 из этих файлов, и я предполагаю, что изменение имени файла в моем коде каждый раз не лучший способ сделать это.
Я пробовал:
import os
import gzip
import shutil
for filename in os.listdir('flavoproteinBAstest'):
with gzip.open(filename, 'rb') as f_in:
with open(filename, 'wb') as f_out:
shutil.copyfileobj(f_in, f_out)
Но я продолжаю получать это обратно из командной строки:
Traceback (most recent call last):
File "gzu.py", line 13, in <module>
with gzip.open(filename, 'rb') as f_in: #make sure file name ends in .gz
File "C:\ProgramData\Anaconda3\lib\gzip.py", line 53, in open
binary_file = GzipFile(filename, gz_mode, compresslevel)
File "C:\ProgramData\Anaconda3\lib\gzip.py", line 163, in __init__
fileobj = self.myfileobj = builtins.open(filename, mode or 'rb')
FileNotFoundError: [Errno 2] No such file or directory: '1AG9.pdb1.gz'
Это для исследовательского проекта в области биохимии, я не специалист по информатике, поэтому, если есть очевидный более простой или лучший способ сделать это, я открыт для предложений. Спасибо!