Замена элементов Python - PullRequest
0 голосов
/ 10 июля 2019

Посмотрите на последовательную пару элементов в списке и поменяйте их местами, если они вышли из строя (возможно, поменяйте местами число более одного раза).

Я пытался использовать циклы и т. Д., Но не могу решить проблему.

удален

Мне нужно использовать функции, а не какую-либо библиотеку Python. Я могу решить эту проблему, используя один (уже есть!), Но мне нужно использовать методы для начинающих низкого уровня.

Например: пузырь ([2,1,4,3]) == [1,2,3,4]

Ответы [ 2 ]

0 голосов
/ 10 июля 2019
value_list =[4,3,2,1]

for a in range(len(value_list)):
    for b in range(len(value_list)):
        if value_list[b] > value_list[a]:
            value_list[b],value_list[a]=value_list[a],value_list[b]

print(value_list)

Вы можете использовать это в функции как:

value_list =[4,3,2,1]
def sort_list(given_list):
    for a in range(len(given_list)):
        for b in range(len(given_list)):
            if given_list[b] > given_list[a]:
                given_list[b],given_list[a]=given_list[a],given_list[b]
    return given_list

print(sort_list(value_list))
0 голосов
/ 10 июля 2019

Вы можете использовать индексы элементов для их замены:

def swap(seq, idx, jdx):
    """swaps the two elements of the sequence, identified by their indices
    in-place, mutates seq
    return: None
    """
    seq[idx], seq[jdx] = seq[jdx], seq[idx]

Один вкладыш, который меняет значения, создает кортеж значений на правой стороне и распаковывает его (назначает каждыйзначения в переменную) с левой стороны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...