Как вернуть аргумент в функции python
1234567891011121314151617181920
import random
def sort(list):
if list == 0:
return None, None
sorted = False
prev_list = list
while not sorted:
sorted = True
for j in range(1, len(list)):
if list[j - 1] > list[j]:
list[j - 1], list[j] = (list[j], list[j - 1])
sorted = False
return (prev_list, list)
n = int(input("Введите размер массива: "))
a = [random.randrange(5, 16) for i in range(n)]
print(a)
print(sort(a))
Код для сортировки списка, но список сам вернуть не могу (надо для удобства его возвращать), как это сделать?
Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
1
prev_list = list[:]
Заменить
1
return (prev_list, list)
на
1
return list
И, похоже, ты не понимаешь, как работают присваивание и передача параметров в Python. Твоё prev_list = list не имеет смысла, т.к. это НЕ создание копии, а присваивание ссылки на ТОТ ЖЕ самый список.
n_prev_list, n_list = sort(a)
print(n_prev_list)
print(n_list)
Больше по теме