Перевожу код из Python 2 в Python 3. Не импортируется файл модуля, хотя в Python2 он импортировался
Код: https://pastebin.com/VvnT9KRC
Строка, на которой получаю ошибку (№4): from _block import compress, decompress, LZ4BlockError
Рядом с py-файлом этого кода лежит этот самый _block.pyd. При использовании Python2 этот самый модуль спокойно импортировался. Сейчас на вышенаписанной строке выдаёт ошибку
ModuleNotFoundError: No module named '_block'
Как исправить? P. S. Дело точно не в имени модуля, пробовал убирать все символы, кроме латиницы, всё равно не работает. Переименовывал и из pyd в py, тоже не работает. При этом тот же самый модуль в Python2 работал без нареканий, а вот Python3 его просто не видит.
import os
import struct
import zlib
from _block import compress, decompress, LZ4BlockError
FOOTER_STRUCTURE = '4I4s'
FOOTER_SIZE = struct.calcsize(FOOTER_STRUCTURE)
inPath = '.\\pack'
filesIn = []
for (dirpath, dirnames, filenames) in os.walk(inPath):
filesIn.extend(filenames)
break
for fileIn in filesIn:
infile = inPath + '\\' + fileIn
outPath = '.\\temp\\'
with open(infile, 'rb') as f, open(outPath + fileIn, 'wb') as out:
unpacked = os.stat(infile).st_size
result = compress(f.read(), mode='high_compression', compression=12, store_size=False)
packed = len(result)
crc = zlib.crc32(result) & 0xFFFFFFFF
ptype = 2
marker = 'DVPL'
data = struct.pack(FOOTER_STRUCTURE, unpacked, packed, crc, ptype, marker)
result += data
out.write(result)
out.close()
f.close()
if filesIn == []:
print('! No files found for pack to DVPL !')
else:
print('Files packed')