Попробуйте что-то вроде этого, если число измерений может не совпадать для вашего массива:
some_tuple = (dim2, dim3) # Could be (dim2, dim3, ..., dimN)
arr[(slice(None),) + some_tuple]
В этом конкретном случае (slice(None),) + some_tuple
совпадает с (slice(None), dim2, dim3)
. slice(None)
более или менее эквивалентно ":
", но его можно использовать в большем количестве мест, чем ":
". Обратите внимание, что я поместил slice(None)
в одноэлементный кортеж (т.е. (slice(None),)
), чтобы добавить его к some_tuple
. Также обратите внимание, что после slice(None)
стоит запятая, т.е. я не просто пишу (slice(None))
без запятой. Это не будет работать без лишней запятой.