Как найти конкретное слово в списке строк?

Я пытаюсь выяснить, как искать слово для поиска слов в банке слов. У меня есть одномерный список с каждой строкой в ​​виде отдельной строки в этом списке.

Например:

m=num rows
n=num columns

grid=['A B C D E F G','H I J K L M N','O P Q R S T U V','W X Y Z A B C']

wordbank=['APPLE','BANANA','ORANGE','BERRY','GRAPE']

Ожидаемый результат следующий: первое число является номером строки, а второе - номером столбца, в котором была найдена первая буква каждого слова:

APPLE 4 2

БАНАНА 8 4

ОРАНЖЕВЫЙ 14 9

ЯГОДА 7 1

ВИНОГРАД 9 8

Как я могу пройти по сетке и найти каждое слово в банке слов и вернуть его индекс?

Кроме того, в дополнение к поиску слева направо по горизонтали, как я могу искать слова в сетке по вертикали?

Я чувствую себя довольно растерянным, когда занимаюсь этим, поскольку я новичок в программировании.

1 ответ

Если вы хотите перебрать столбцы, вы можете использовать такой фрагмент кода, как

for i in range(n): # where n is the num of columns...
    for x in grid:
        print(x[i], end='')

и это обеспечит выход, как

AHOW    BIPX    CJQY    DKRZ

СОВЕТ: Если вы хотите сделать проверку справа налево, вы всегда можете разобрать строку как

myword = 'Hello'
myword[::-1] # This will return 'olleH'

Это может быть полезно для проверки соответствия как при вертикальной, так и горизонтальной проверках.

Другие вопросы по тегам