Перед запуском функции ниже l1 является пустым списком, но почему это [1, 2, 3] после запуска функции?область действия функции python
def copylist(lsource, ldest):
for e in lsource:
ldest.append(e)
print 'ldest =',ldest
l1 = []
l2 = [1, 2, 3]
copylist(l2, l1)
print l1 # displays [1, 2, 3]
print l2 # displays [1, 2, 3]
Потому что именно так вы написали функцию? Он копирует данные из 'lsource' в' ldest', поэтому он копирует его в 'l1'. – BrenBarn
Я ниспровергаю, потому что, основываясь на комментариях к ответам, этот вопрос больше, чем вы писали выше. Если вы хотите получить полный ответ, вам нужно задать полный вопрос. – SethMMorton
Поскольку функция работает правильно. Что вы ожидали? –