Рубрики
Без рубрики

Python: больше не нужно в диапазоне (Len (…))

Я практиковал свои навыки написания алгоритма на CodeSignal, и одна из проблем заключается в том, как подвести итог … Tagsed Python.

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

Что отличается в CodeSignal, так это то, что вы можете просматривать и подниматься или вниз по вопросам решения других людей после того, как вы отправили свое решение. Даже в небольших проблемах алгоритма вы можете увидеть, как другие используют умные уловки и библиотеки на используемом языке программирования.

Например, я использовал Питон перечислять функция Чтобы пройти ряды и столбцы матрицы:

for i, row in enumerate(matrix):
    for j, col in enumerate(row):
        print('matrix[{}][{}] = {}'.format(i, j, col))

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

for i in range(len(matrix)):
    for j in range(len(matrix[i])):
        print('matrix[{}][{}] = {}'.format(i, j, matrix[i][j]))

Это то, что имеет смысл в таких языках, как C, C ++ или JavaScript или даже в Java. Однако, если есть итераторы, которые дают вам как индекс, так и значение, вы должны использовать их и сопоставить идиомы языка.

С другой стороны, я нашел решение, которое было умным и использовал комбинацию Python’s Iertools Взятие функция и встроенный сумма и карта функции.

Есть много, что все разработчики могут узнать, даже в самых маленьких проблемах.

Оригинал: “https://dev.to/rudolfolah/python-no-more-need-for-range-len-4n1i”