Python функции обычно следуют двум соглашениям:
- Возвращает новый объект, оставляя аргумент без изменений.
- Измените аргумент на месте, и return
None
.
Ваша функция выполняет последнее и должна опускать оператор return
.
>>> x = [1, 2, 3, 4]
>>> swapPositions(x, 2, 3)
>>> x
[1, 2, 4, 3]
Если вы выберете первое, x
должно быть остался один
def swapPositions(L, pos1, pos2):
L = L.copy()
L[pos1], L[pos2] = L[pos2], L[pos1]
return L
>>> x = [1, 2, 3, 4]
>>> swapPositions(list, 2, 3)
[1, 2, 4, 3]
>>> x
[1, 2, 3, 4]