" 태도는 사소한 것이지만, 그것이 만드는 차이는 엄청나다.
즉 어떤 마음가짐을 갖느냐가 어떤 일을 하느냐보다 더 큰 가치를 만들 수 있다. "
- 윈스턴 처칠 -
Python(파이썬) 4. 리스트(List)
목 차
1. 리스트(List)
2. 리스트(List) 관련 함수
3. 리스트(List) 연습문제
1. 리스트(List)
1) 리스트(List)란?
- 리스트(List)란, 순서가 있는 값들의 나열로 리스트를 구성하는 값을 요소 혹은 원소라고 부른다.
- 요소 혹은 원소에는 어떠한 타입의 값이든 올 수 있게 된다.
- 리스트를 만드는 방법은 요소들을 대괄호([ ])로 둘러싸고, 요소들은 콤마(,)로 구분시켜준다.
2) 리스트(List) 인덱싱
- 리스트(List)는 문자열과 같이 인덱스(index)가 존재하기 때문에 인덱싱으로 리스트의 요소를 가져올 수 있다.
- 문자열과는 다르게 인덱싱을 통해 요소를 변경할 수 도 있다.
- 리스트(List)를 연결하는 "+" 연산자, 리스트를 반복하는 "*" 연산자 또한 사용이 가능하다.
2. 리스트(List) 관련 함수
1) 추가 함수(append)
- 기존의 리스트에 있는 요소에 하나의 다른 값을 추가하는 경우 이용하는 함수
- append() 함수로 추가되는 요소는 기존의 리스트 가장 마지막 요소로 추가가 된다.
- append() 함수로 추가되는 요소의 타입 또한 마찬가지로 아무런 타입이 올 수 있다.
2) 삽입 함수(insert)
- 뒤에서부터 추가되는 append() 함수와 달리, insert() 함수는 지정한 위치에 추가하려는 하나의 요소를 넣을 수 있다.
- insert() 함수에는 "insert(추가될 요소의 위치, 추가할 요소의 값)"을 나타내는 인수(Argument)가 존재한다.
- insert() 함수로 추가되는 요소의 타입 또한 마찬가지로 아무런 타입이 올 수 있다.
3) 확장 함수(extend)
- 한 가지의 요소씩 추가되는 append() 함수와 달리, 여러 개의 값을 추가할 수 있다.
- extend() 함수로 전달되는 인수에는 리스트로만 올 수 있다.
4) 위치 확인 함수(index)
- 리스트(List)에 있는 특정 요소의 위치를 확인하는 함수.
- 위치의 값은 마찬가지로 "0"부터 시작된다.
5) 요소 수 확인 함수(count)
- 리스트(List)에 존재하는 특정 요소의 수가 몇 개 존재하는지 확인하는 함수
- count() 함수에 확인하고 싶은 요소를 인자로 건네주면 된다.
6) 요소를 꺼내는 함수(pop)
- 리스트(List)의 요소를 꺼내는 함수로 pop() 함수는 인수를 생략하게 되면 가장 뒤의 요소가 꺼내진다.
- pop() 함수를 이용해 꺼내진 요소는 해당 리스트 내에서 제거된다.
7) 제거 함수(remove)
- 리스트(List)의 해당하는 요소만을 제거한다.
- 만약 리스트(List)에 해당하는 요소가 여러 개 존재한다면 가장 앞에 있는 요소부터 제거된다.
8) 정렬 함수(sort, reverse)
① sort() 함수
- 기본적으로 sort() 함수는 "오름차순"으로 정렬시켜준다.
② reverse() 함수
- sort() 함수와는 반대로 단순하게 리스트 내의 요소들을 모두 역순으로 뒤집어주는 함수
9) 리스트를 문자열로 변환
① for문
② String.join()
③ 숫자가 포함된 리스트를 문자열로 변환
3. 리스트(List) 연습문제
Q1. 리스트 " code = ['9:30', 1, 2, 3, 4, 5] " 생성 후 시간 정보를 제외한 나머지 정보를 출력하라.
A1. (드래그 후 결과 확인)
>>> code = ['9:30', 1, 2, 3, 4, 5]
>>> print(code[1:])print(code[-5:])
[1, 2, 3, 4, 5]
Q2. 리스트 " numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9] "에서 슬라이싱을 이용하여 짝수만 출력하라.
A2. (드래그 후 결과 확인)
>>> numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> print(numbers[1::2])
[2, 4, 6, 8]
Q3. 리스트 " company = ['Naver', 'Samsung', 'Apple', 'Coupang'] "에서 Naver Samsung Apple Coupang 을 출력하라.
A3. (드래그 후 결과 확인)
>>> company = ['Naver', 'Samsung', 'Apple', 'Coupang']
>>> print(" ".join(company))
Naver Samsung Apple Coupang
Q4. 리스트 " company = ['Naver', 'Samsung', 'Apple', 'Coupang'] "에서 아래와 같이 출력하라.
Naver
Samsung
Apple
Coupang
A4. (드래그 후 결과 확인)
>>> company = ['Naver', 'Samsung', 'Apple', 'Coupang']
>>> print("\n".join(company))
Naver
Samsung
Apple
Coupang
Q5. 문자열 "Nike/Addias/Puma/Reebok"을 brand라는 리스트로 분리하여 저장하라.
A5. (드래그 후 결과 확인)
>>> str_1 = "Nike/Addias/Puma/Reebok"
>>> brand = str_1.split("/")
>>> print(brand)
['Nike', 'Addias', 'Puma', 'Reebok']
Q6. 다음 영화 제목을 movie라는 리스트에 저장하라.
아이언맨, 스파이더맨, 베놈, 닥터 스트레인지
A6. (드래그 후 결과 확인)
>>> movie = ['아이언맨', '스파이더맨', '베놈', '닥터 스트레인지']
>>> print(type(movie), movie)
<class 'list'> ['아이언맨', '스파이더맨', '베놈', '닥터 스트레인지']
Q7. movie 리스트에 '슈퍼맨', '엑스맨' 을 추가하라. 단, '엑스맨'은 '아이언맨'과 '스파이더맨' 사이에 추가하라.
A7. (드래그 후 결과 확인)
>>> movie = ['아이언맨', '스파이더맨', '베놈', '닥터 스트레인지']
>>> movie.append('슈퍼맨')
>>> movie.insert(1, '엑스맨')
>>> print(movie)
['아이언맨', '엑스맨', '스파이더맨', '베놈', '닥터 스트레인지', '슈퍼맨']
'프로그래밍 언어 > Python' 카테고리의 다른 글
Python(파이썬) 6. 딕셔너리(Dictionary) (0) | 2021.09.22 |
---|---|
Python(파이썬) 5. 튜플(Tuple) (0) | 2021.09.22 |
Python(파이썬) 3. 문자열 자료형 (0) | 2021.09.20 |
Python(파이썬) 2. Print 함수의 이해 (0) | 2021.09.15 |
Python(파이썬) 1. 기본설치 및 가상 환경구축 (0) | 2021.09.15 |