본문 바로가기

Language/Python

<파이썬 기초> 09. 리스트

 이 글은 미시건 주립대학교 찰스 교수의 MOOC강의인 Python for Everybody를 수강하고 정리하며 쓰는 글입니다.

 

  파이썬에서는 변수에 리스트를 할당할 수 있다.

 

x = ['AA', 'BB', 'CC']
print(x[0])
print(len(x))

# AA
# 3

 

  위는 변수 x 에 AA BB CC 를 갖고있는 리스트를 할당시켰다. 인덱스를 이용하여 첫번째에 해당하는 문자를 출력하였다. 그리고 len함수를 통해 길이를 측정하였다. len은 일반 문자에 사용하면 문자의 길이를 나타내지만 리스트에 사용하면 리스트에 존재하는 문자의 갯수를 출력한다. 바꿔 말하면 리스트에 존재하는 항목의 갯수 자체가 리스트의 길이이다.

 

 위를 보면 알 수 있겠지만 참고로 + 연산자로 리스트를 병합할 수도 있고, : (콜론) 을 통해 리스트 슬라이싱도 가능하다.

 

 이번에는 리스트를 만들어 보자.

 

friends = list()
friends.append('AA')
friends.append('BB')
friends.append('DD')
friends.append('CC')
print(friends)
friends.sort()
print(friends)

# ['AA', 'BB', 'DD', 'CC']
# ['AA', 'BB', 'CC', 'DD']

 

  빈 리스트를 만들기 위해 list() 함수를 사용하였다. 그 후 append 메서드를 이용하여 AA BB DD CC 순으로 추가하였다. 여기서 print함수를 사용하여 보자면, 우리가 항목을 추가한 순서대로 리스트가 만들어졌음을 알 수 있다. 하지만 sort메소드를 이용하게되면 friends라는 리스트는 정렬이 되게 된다.

 

 이번에는 이를 문자열과 함께 활용하여 보자.

 

line = 'From harry99@kakao.com Wed Oct'
words = line.split()
print(words[1])
email = words[1]
adress = email.split('@')
print(adress[1])

# harry99@kakao.com
# kakao.com

 

 line에 마치 나에게 이메일이 온것같은 메세지를 할당하였다. 참고로 실제 나의 카카오메일이다. words를 보면 line을 split메서드를 통해 띄어쓰기를 구분하여 리스트로 분할시켰다. 여기서 1번 인덱스를 가진 항목을 출력해보면 나의 메일 주소만 출력되는 것을 알 수 있다.

 

 그리고 어느 메일주소에서 온 것인지 출력하기 위해 split 을 @ (at)으로 사용하였다. 그 후 1번째 인덱스를 출력하면 메일주소만 뜨게 되는 것이다.

 

 

 


 

참고

 

 

PY4E - Python for Everybody

 

www.py4e.com

 

모두를 위한 프로그래밍 : 파이썬 강좌소개 : edwith

- 커넥트재단

www.edwith.org

 

 

'Language > Python' 카테고리의 다른 글

<파이썬 기초> 11. 튜플  (0) 2020.10.27
<파이썬 기초> 10. 딕셔너리  (0) 2020.10.20
<파이썬 기초> 08. 파일  (0) 2020.10.06
<파이썬 기초> 07. 문자열  (0) 2020.10.04
<파이썬 기초> 06. 루프와 반복문  (0) 2020.10.03