В Python, как я делаю либо открыть tar.gz использование для loopand retrieve .файл данных? Или просто откройте файл .data и скопируйте его содержимое в список.
В Python, у меня есть папка с большим количеством файлов tar.gz . Я хочу быть в состоянии добраться до одного .файл данных в каждом из них tar.gz файл и собрать строку данных. Как я могу зациклить папку и прочитать содержимое в таком файле?
список =["C:\\user\\desktop\\test_folder\\arch126.tar\\arch126.tar.dir\\ter126.data","gz:r","C:\\user\\desktop\\test_folder\\arch127.tar\\arch127.tar.dir\\ter126.data","gz:r"]
ибо я в списке:
открыть (i) как f:
печати(Ф.читать())
FileNotFoundError [Errno 2] нет такого файла или каталога :
"C:\\user\\desktop\\test_folder\\arch126.tar\\arch126.tar.dir\\ter126.data" What I have tried: tar = tarfile.open("C:\\user\\desktop\\test_folder\\arch126.tar\\arch126.tar.dir\\ter126.data") for member in tar.getmembers(): F = tar.extractfile(member) if F is not None: content = f.read() <pre> import tarfile import os for i in os.listdir(r'C:\users\test_folder'): str = r'C:\users\test_folder' str1 = str1 + '\\' + i if str1.endwith(".tar.gz"): tar = tarfile.open(str1,"r:*") for member in tar: f = tar.extractfile(member)
Richard MacCutchan
Вы пытаетесь открыть каталог, а не файл.
mike_j7909
правильно пытался зациклиться на папке, которая, как я полагаю, является директором. правильно? или вы можете предложить лучший способ.
Richard MacCutchan
Проблема в том, что где-то (вы не сказали нам, где) вы получаете ошибку, пытаясь получить доступ к файлу, который не существует. Проверьте место, где возникает ошибка, и посмотрите, что именно является именем файла, которое вы пытаетесь открыть.