본문 바로가기

프로그래밍/파이썬

[파이썬] 리스트(list) append 메서드 사용시 NoneType이 출력되는 경우

제가 코드를 작성하면서 실수한 점을 적었습니다.




1. 간단한 문자열 리스트를 작성해보았다.


2. 리스트를 출력해보면 아래와 같이 출력된다.

'a'

'b'

'c'

'd' 


3. 여기에 append 메서드를 이용해 'e'를 넣어본 뒤 출력하면 아래와 같이 출력될까?

'a'

'b'

'c'

'd' 

'e'


4. 아니다. None이 출력된다. 그 이유는?


이는 메서드의 리턴값을 몰라서 발생한 오류이다.

append 메서드 자체는 return값으로 None을 돌려준다.

그래서 print(aList.append('e'))의 값이 None이 출력되는 것이다.


따라서, 다음과 같이 출력하면 정상적인 결과를 얻을 수 있다.

aList = ['a', 'b', 'c', 'd']
for i in aList:
print(i)

aList.append('e')
print(aList) => 수정한 부분


※ aList = aList.append('e')라고 하면 aList = None값이 된다. 주의하자