Главная страница

Программирование. Программирование на языке Python (Полякова К.Ю.). Общие сведения о языке Python История


Скачать 5.72 Mb.
НазваниеОбщие сведения о языке Python История
АнкорПрограммирование
Дата27.02.2023
Размер5.72 Mb.
Формат файлаppt
Имя файлаПрограммирование на языке Python (Полякова К.Ю.).ppt
ТипДокументы
#956875
страница13 из 18
1   ...   10   11   12   13   14   15   16   17   18

Реверс массива





0


1


2


3


N-4


N-3


N-2


N-1


7


12


5


8


18


34


40


23


0


1


2


3


N-4


N-3


N-2


N-1


23


40


34


18


8


5


12


7


«Простое» решение:


for i in range( N ):
поменять местами A[i] и A[N-1-i]


N//2


Что плохо?


?


остановиться на середине!

Реверс массива





for i in range(N//2):
c = A[i]
A[i] = A[N-1-i]
A[N-1-i] = c


Варианты в стиле Python:


for i in range(N//2):
A[i], A[N-i-1]= A[N-i-1], A[i]


A.reverse()

Срезы в Python





0


1


2


3


N-4


N-3


N-2


N-1


7


12


5


8


18


34


40


23


0


1


2


3


N-4


N-3


N-2


N-1


N


A[1:3]


[12, 5]


A[2:3]


[5]


A[:3]


[7, 12, 5]


A[0:3]


с начала


A[3:N-2]


[8,…,18,34]


разрезы


A[3:]


[8,…,18,34,40,23]


A[3:N]


до конца


A[:]


[7,12,5,8,…,18,34,40,23]


копия массива

Срезы в Python – отрицательные индексы





0


1


2


3


N-4


N-3


N-2


N-1


7


12


5


8


18


34


40


23


0


1


2


3


N-4


N-3


N-2


N-1


N


A[1:-1]


[12,5,8,…,18,34,40]


разрезы


A[1:N-1]


A[-4:-2]


[18, 34]


A[N-4:N-2]

1   ...   10   11   12   13   14   15   16   17   18


написать администратору сайта