February 16, 2021

Данные и представление данных

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

Пример 1

В задаче надо было посчитать долю определенных символов. Данными является отношение количества искомых символов к количеству всех. То есть, число от 0 до 1, например, 0.35. Представь, что это число ты будешь использовать для каких-то других расчетов. И если у тебя будет храниться не 0.35, а просто 35, то каждый раз надо будет делить на 100, что будет усложнять все формулы. Поэтому желательно отдельно посчитать отношение, а в процентный, удобный для человека формат перевести непосредственно перед выводом:

ratio = (genome.count('c') + genome.count('g')) / len(genome)
print(ratio * 100)

Пример 2

Даны границы интервала, и вторая граница по условию включается. Но в программировании все интервалы всегда полуоткрытые — слева включают границу, справа — не включают. В правильный формат данные надо переводить как можно быстрее:

left = int(input())
right = int(input()) + 1  # Upper boundary is included in the input
for i in range(left, right):
    ...