본문 바로가기

파이썬 배우기

2-1. 파이썬 맛보기_리스트

반응형

변수는 하나의 값 혹은 다른 변수의 값을 가질 수 있다. 여러 개의 값이나 변수를 가지기 위해서는 집합으로 지정해야 한다. 집합의 종류에는 리스트, 딕셔너리, 튜플 등이 있는데 여기서는 그중 대표적인 리스트에 대해 알아보도록 한다.

 

리스트는 여러 개의 변수, 값을 묶어서 집합으로 관리하는 자료 형태이며, 다음과 같이 대괄호를 사용해 정의한다.

 

리스트명=[원소1, 원소2, 원소3, ...]

 

리스트로 정의된 변수의 이름을 사용하면 리스트 내 모든 원소를 지정할 수 있다. 예를 들면 "2학년 1반 1번, 2번, 3번...10번 음악실로 이동"처럼 개개인을 지정해서 말하는 것이 아니라 "2학년 1반 모두 음악실로 이동"처럼 그룹별로 말하는 것과 유사하다. 예제 1에서 처럼 print()를 이용해 1번부터 10번까지 부를 수도 있으나, 리스트를 이용해 한 번에 1번부터 10번까지 부를 수 있다.

 

예베 1 리스트 자료 입력

리스트 내에서 하나의 원소를 선택할 때는 몇 번째 원소인지를 지정해서 선택할 수 있다. 여기서 "몇 번째"는 인덱스 번호이며, 리스트변수이름[인덱스 번호] 형식으로 사용할 수 있다. 리스트의 첫 번째 원소에 해당하는 인덱스 번호는 0이며 순서대로 1씩 증가한다. 반대로 리스트의 마지막 원소를 기준으로 인덱스 번호를 표현할 수도 있다. 마지막 원소가 -1이며 역순으로 -1씩 증가한다.

 

예제 2에서는 'a'부터 'e'까지 포함하는 리스트 k에 대해 인덱스 번호를 활용해 왼쪽에서 두번째 원소를 출력했다.

 

예제 2 리스트 자료 내의 원소 1개 선택하기: 인덱스 번호 활용

여러 원소를 구간으로 선택할 경우 슬라이싱을 활용할 수 있다. 리스트변수이름[시작인덱스 번호 : 마지막인덱스 번호]의 형태로 사용할 수 있으며 주의할 점은 콜론(:) 뒷부분에 적히는 인덱스 번호는 포함하지 않고 바로 앞의 인덱스 번호까지만 포함한다는 것이다. 다음 예제를 보자.

 

예제 3 리스트 자료 구간별 글자 선택: 슬라이싱

5번째 줄에서는 리스트 k의 인덱스 번호 1번부터, 인덱스 번호 3번 직전까지만 선택해서 화면에 출력한다. 6번째 줄에서는 리스트 k의 인덱스번호 -4(오른쪽 끝에서부터 4번째 자리의 원소)부터 인덱스 번호 -2 직전까지만 선택해서 화면에 출력하라는 의미이다. 인덱스 번호는 왼쪽부터 셀 수 있고 오른쪽부터도 셀 수 있다. 즉 5번째 줄과 6번째 줄의 결과는 같다. 

두개 이상의 리스트가 있으면 이를 합쳐 하나로 만들 수 있다. 여러 리스트를 병합할 때는 두 가지 방법을 사용할 수 있다. 리스트를 병합하는 첫 번째 방법은 두 리스트의 원소들을 순서대로 나열한 뒤, 하나의 리스트로 재구성하는 방법이다. 다음 예제를 보자.

 

예제 4 리스트 합치기: 리스트1 + 리스트2

보다시피 '리스트A + 리스트B' 형태로 사용할 경우 리스트 A의 원소 이후에 리스트 B의 원소가 차례대로 나열된 리스트를 만들 수 있다. 이때 리스트의 순서에 따라 결과가 달라질 수 있으니 순서에 신경써야 한다.

반응형