
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
x = 3
def plus_one(a):
a += 1return
plus_one(x)
print(x)
이 코드의 출력값은 3입니다. 함수 내부에서 일어난 변화는 바깥에 영향을 미치지 않기 때문입니다.
input = [4, 6, 2, 9, 1]
def insertion_sort(array):
for i in range(1, len(array)):
for j in range(i):
if array[i] < array[j]:
array[i], array[j] = array[j], array[i]
else:
breakreturn
insertion_sort(input)
print(input) # [1, 2, 4, 6, 9] 가 되어야 합니다!
그런데 왜 다음과 같이 수업시간에 배운 정렬 함수는 함수 내부에서 변화를 주었는데도 출력하면 정렬된 값이 출력되나요?

