알고리즘

python 출력의 대한 고찰

jinsuc28 2022. 3. 31. 17:41

ipynb 파일로 코딩테스트 준비하던 중 이상한 사례를 목격한다.

 

1)
a = [123,123]

print(a)
print(a.pop())

>>>[123,123]
>>>[123]

2)
a = [123,123]
print(a)
a.pop()

>>>[123,123]

위 처럼 1,2는 차이가 있다.
바로 print을 쓰게 되면 나머지 함수는 작동하지만, 출력되지 않는다.

pop함수는 원래 defalut로 리스트의 마지막 원소를 제거하고, 그 원소를 반환한다.
하지만, print문과 함께 이를 동작시키면 원소는 반환되지는 않는다.

 

다른 예시로

 

1)

a = [123,123]
b = [321,321]
print(a)
b

>>>[123,123]
>>>[321,321]

2)

a = [123,123]
b = [321,321]
b
print(a)

>>>[123, 123]

이처럼 변수만 입력했을 때 출력해주는 것은 주피터노트의 기능 중 하나이다.(정확한 이름은 모름)

하지만, 이를 믿고 코딩테스트를 실수 하지 말자

 

또한, 변수를 입력하고 print를 쓰게 될경우 변수에 대한 출력은 무시된다. 때문에

print를 쓰고 변수를 입력하던지 헷갈리지 않게 둘다 print를 쓰자