Все еще изучаем все тонкости Python здесь. У меня был небольшой успех с использованием библиотеки openpyxl, и я начал этот любимый проект с использованием файла Excel в качестве «холста» для чтения 1-битного bmp-файла из каталога, а затем для «дублирования-отображения» изображения на листе, избавившись от руководствуясь уменьшением размеров каждой ячейки и, наконец, добавлением небольшого изображения в каждую ячейку со списком двоичных данных из метода getdata из подушки.
Я не прошел всю логику, но у меня проблемы с приведенным ниже кодом в течение двух ночей, и я до сих пор не понимаю, почему я получаю имя «openpyxl», ошибка не определена в строке почти внизу кода sheet.add_image(openpyxl.drawing.image.Image('square_blue.jpg'), colnum_string(col)+str(row))
Я добился успеха в аналогичном проекте, использующем почти идентичный импорт библиотек openpyxl и PIL.
from openpyxl import Workbook
import os
from PIL import Image
# for file in os.listdir():
# if file.endswith('bmp'):
os.chdir('c:/users/Sam/Desktop/py')
img = Image.open('trump.bmp')
img_width, img_height = img.size
pix_val = list(img.getdata())
wb = Workbook()
def colnum_string(n):
string = ""
while n > 0:
n, remainder = divmod(n - 1, 26)
string = chr(65 + remainder) + string
return string
r_height = 3
c_width = 3
sheet = wb.create_sheet("Mysheet")
for col in range(1, img_height):
sheet.row_dimensions[img_height].height = r_height
for row in range(1, img_width):
sheet.column_dimensions[colnum_string(col)] = c_width
sheet.add_image(openpyxl.drawing.image.Image('square_blue.jpg'), colnum_string(col)+str(row))
wb.save('out.xlsx')
Кто-нибудь может мне помочь, пожалуйста?