프로그래밍/파이썬

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

WITN 2017. 2. 18. 17:15

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




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값이 된다. 주의하자