0
0 комментариев

Привожу два примера в псевдокоде. Какие из условий (condition) будут выполнены, заранее неизвестно.

  1. Создание массива, заполенного нулями.

    array = numpy.zeros(x)
    if condition1:
         array = numpy.concatenate((array, newarray1))
    ...
    if conditionN:
         array = numpy.concatenate((array, newarrayN))
    array = array[1:, :] #отсекаю строку нулей, которой был инициализирован массив
    

  2. Проверка на существование переменной в локальной области видимости в каждом условии.

    if condition1:
        if 'array' in locals():
            array = numpy.concatenate((array, newarray1))
        else:
            array = numpy.array(newarray1)
    ...
    if conditionN:
        if 'array' in locals():
            ...
    

Оба варианта кажутся костыльными. Как все-таки правильнее инициализировать массив с последующим его расширением?


Добавить комментарий