Я работаю над своим первым проектом на Python для устройства, которое читает строку из OCR и выводит шрифт Брайля.Устройство Брайля может выводить только 6 букв за раз.Я застрял, пытаясь отсканировать каждый символ в многострочном массиве длиной 6 символов.
Для простоты, сейчас я хочу напечатать только "это (вставить символ)" для каждого символа в мультимассив строкВ действительности, результатом будет запуск кода, который говорит первым двум двигателям создать символ в Брайле, а затем сделать это для оставшихся 5 символов с 10 оставшимися двигателями с короткой задержкой между каждой строкой длиной 6 символов.Как отсканировать каждую 6-символьную длинную строку и зациклить ее для остальных строк в массиве?
Вот где я сейчас нахожусь:
from PIL import Image
import pytesseract
img = Image.open('img file path')
text = [item for item in (pytesseract.image_to_string(img, lang='eng', config='--psm 6')).split('\n')]
oneLineStr = ' '.join(text)
# displays: The quick brown fox jumps over the lazy dog.
print(oneLineStr)
arr6elem = []
for idx in range(0, len(oneLineStr), 6):
arr6elem.append(oneLineStr[idx:idx + 6])
# displays: ['The qu', 'ick br', 'own fo', 'x jump', 's over', ' the l', 'azy do', 'g.']
print(arr6elem)
# Don't know what to do from this point
# Want to scan each 6-element string in list and for each string, see which elements it consists of
# (capital/lower case characters, numbers, spaces, commas, apostrophes, periods, etc.)
# Then, print "this is a" for letter a, or "this is a colon" for :, etc.
# So that output looks like:
# ["'this is T', 'this is h', 'this is e', this is a space', 'this is q', 'this is u'", "'this is i', 'this is c'...]