1.리스트 소개
리스트는 집합과 비슷하지만 데이터에 순서가 부여된다는 차이점이 있다.
alist = [0,1,2,3]꼭 숫자만 담을 수 있는 것은 아니고, 문자열을 담을 수도 있고, 리스트 자체도 리스트에 담길 수 있다.
blist = [1,2,"python", [8,9,"haha"]]비어 있는 리스트도 만들 수 있다. 빈 리스트는 코딩에서 정말 자주 활용된다.
clist = []
dlist = list()2.리스트 컴프리헨션(list comprehension)
파이썬에 익숙해지면 리스트를 만들 때 리스트 컴프리헨션을 많이 이용하게 된다. 일단 초급과정 때는 굳이 이 방법을 쓰지 않아도 좋다.
예를 들어 [0,1,2,3,4]라는 리스트를 만들기 위해 아래와 같이 직접 리스트에 요소를 담아도 되지만
alist = [0,1,2,3,4]집합의 조건제시법처럼 아래와 같이 만들 수도 있어 편리하다. 이 방법을 리스트 컴프리헨션이라 한다.
# 0이상 5미만의 정수 k를 담은 리스트
blist = [k for k in range(0,5)]3.list()
리스트는 파이썬 코딩에서 정말 많이 다루는 자료형이라서, 다른 타입의 데이터를 리스트로 바꾸어야 할 때가 종종 있다. 그 때는 주어진 객체를 list()함수로 감싸주면 타입이 리스트로 바뀐다.
a_tup = ('a', 'b', 'c')
a_list = list(a_tup)
b_str = 'school'
b_list = list(b_str)
print(a_list)
print(b_list)| [‘a’, ‘b’, ‘c’] [‘s’,‘c’,‘h’,‘o’,‘o’,‘l’] |
4.리스트 추출(리스트 슬라이싱)
문자열과 마찬가지로 리스트는 오프셋으로 요소를 추출할 수 있다. 이 기능은 밥 먹듯이 쓰인다. 형식은 아래와 같다.
list[begin : end : step]
step을 생략하고 아래와 같이 쓸 때가 더 많다. 이러면 step의 디폴트값은 1이다.
list[begin:end]
alist = [k for k in range(1,31)] #1부터 30까지 정수 리스트
print('10미만 정수:', alist[0:9])
print('15이상 25미만 정수:', alist[14:25])
print('짝수:', alist[1:30:2])
| 10미만 정수: [1, 2, 3, 4, 5, 6, 7, 8, 9] 15이상 25미만 정수: [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25] 짝수 : [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30] |
문자열과 마찬가지로 오프셋이 음수이면 끝에서 거꾸로 값을 추출한다는 뜻이다.
fruits = [‘apple’, ‘mango’, ‘grape’, ‘banana’]
print(fruits[-1])
print(fruits[-2])
| banana grape |
5.리스트 요소 바꾸기
문자열은 한 번 만들어지면 결코 수정이 불가능했다. 반면 리스트는 이와 같이 오프셋을 통해 요소 변경이 가능하다.
guests = ['cha','kim','park','hwang']
guests[1] = 'lee' #2번째 요소를 lee로 바꾸어 할당하라
print(guests)| [‘cha’, ‘lee’, ‘park’,’hwang’] |
6.리스트 요소 삭제하기
리스트에서 요소를 삭제하는 방법은 3가지가 있는데 여기서는 간단히 하나만 소개하겠다.
students = ['moon', 'kim', 'hong' , 'baek']
students.remove('baek')
print(students)| [‘moon’, ‘kim’, ‘hong’] |
7.리스트에 요소 추가하기
리스트에 요소를 추가하는 append() 함수는 정말 많이 쓰이는 기능이다.
students = ['moon', 'kim', 'hong' , 'baek']
students.append('cha')
print(students)| [‘moon’, ‘kim’, ‘hong’, ‘baek’, ‘cha’] |
이 함수가 자주 쓰이는 이유는, 코딩에서 어떤 주어진 조건을 만족하는 값들을 차곡차곡 리스트에 담을 일이 많기 때문이다. 아래는 여러 프로그래밍 코드에서 찾아볼 수 있는, append()함수가 쓰이는 부분이다.



댓글 남기기