Вы не можете использовать список Python таким образом. Это не похоже на массив C с предопределенной длиной . Если вы хотите добавить новый элемент, вы должны использовать метод append
или что-то в этом роде.
Помимо этого, вы также используете второй индекс, подразумевая, что элементы vector
сами списки или dicts или что-то, прежде, чем они даже были назначены.
Похоже, что вы хотите конвертировать speeds
и directions
в двухмерный список. Итак, во-первых, вот как это сделать с циклом. Отметьте , что я удалил предположение фиксированного размера, которое вы использовали, хотя код по-прежнему предполагает, что speeds
и directions
- такого же размера.
def get_two_dimensional_vector(speeds, directions):
vector = []
for i in range(len(speeds)):
vector.append([speeds[i], directions[i]])
return vector
speeds = [1, 2, 3]
directions = [4, 5, 6]
v = get_two_dimensional_vector(speeds, directions)
print(v)
Теперь, это Pythonic способ сделать это.
print(zip(speeds, directions))
С помощью [ 'enumerate'] (https://docs.python.org/3/library/functions.html#enumerate) в петле –
[я/2 - 1/2] в последней строке следует заменить на [(i - 1)/2] для стартеров. – Squid
Если это целочисленное деление, вам даже не нужно это делать. В любом случае. –