Numpy отрицательное индексирование a [: - 0]

Я хочу использовать срез массива для обрезки массива т.е.

a_trimmed = a[trim_left:-trim_right]

Это замечательно, если только trim_right равно 0, я получаю a[trim_left:0], который является пустым массивом.

Я полагаю, что могу это сделать

a[trim_left:a.shape[0]-trim_right]

но он уродливее. Какой самый чистый способ выразить это?

Ответы

Ответ 1

None - допустимая конечная точка среза:

a[trim_left:-trim_right or None]

Ответ 2

Это не то уродливое ИМХО. единственный способ, с помощью которого я могу сделать это короче, заменить a.shape[0] на len(a)