0
3 комментария

Python 3.7.  Windows 10.

Буду очень признателен если поможете чайнику.

#функция задача который изменить список добавив к каждому элементу d
def append_d(d):
____variable_d = ‘d’
____for letter in letters:
________result = [variable_d + letter for letter in letters]
________return result

letters = [‘a’,’b’,’c’]

append_d(letters)
# обращаюсь функции

print(letters)
# проверяю список он по прежнему исходный
print(append_d(letters))
# при таком вызове показывает список с прибавленными буквами

Вопрос закрыт для новых ответов.
Новый комментарий
telych добавлен комментарий

Спасибо за ответ, если не сложно объясните разницу с этим примером, в нем после обращение к функции не нужно присваивать новое значение спискам.
def moving_a_in_b(a, b):
#функция перемещает элемент из списка a в список б
____while a:
________letter = a.pop()

________b.append(letter)

a = [‘a’,’b’,’c’]
b = []

moving_a_in_b(a,b)

stud_55@mail.ru добавлен комментарий

В вашем втором примере не нужно присваивать массиву b никакого значения потому, что в функции с помощью append в него добавляются все элементы извлекаемые из массива a. А в первом примере в функции при помощи list comprehension создавался массив result, который потом возвращался из функции, но никуда не присваивался, поэтому исходный массив оставался без изменений. Функция print(append_d(letters)) выдавала измененные массив потому что она показывала возвращаемый массив result. Как-то так.

telych добавлен комментарий

дошло, спасибо огромное

Добавить комментарий