산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> python

파이썬 리스트(List) 완벽 가이드: 생성, 접근, 수정, 메서드 총정리

이전 페이지 다음 페이지  

파이썬에서 가장 기본적인 데이터 구조는 시퀀스(sequence)입니다. 시퀀스의 각 요소에는 번호(위치 또는 인덱스)가 할당됩니다. 첫 번째 인덱스는 0, 두 번째는 1, 이런 식입니다.

파이썬에는 6가지 내장 시퀀스 타입이 있지만, 가장 흔한 것은 리스트와 튜플입니다.

모든 시퀀스 타입으로 할 수 있는 작업들이 있습니다. 인덱싱, 슬라이싱, 추가, 곱셈, 멤버십 검사 등이 포함됩니다. 또한 파이썬에는 시퀀스 길이 찾기, 최대/최소 요소 찾기 위한 내장 함수가 있습니다.

파이썬 리스트

리스트는 파이썬에서 가장 다재다능한 데이터 타입으로, 쉼표로 구분된 값(항목)들을 대괄호 사이에 쓴 형태로 표현됩니다. 리스트의 중요한 점은 리스트의 항목들이 같은 타입일 필요가 없다는 것입니다.

리스트 생성은 다른 쉼표로 구분된 값들을 대괄호 사이에 넣는 것만큼 간단합니다. 예를 들어:

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5];
list3 = ["a", "b", "c", "d"]

문자열 인덱스와 유사하게 리스트 인덱스는 0부터 시작하며, 리스트도 슬라이싱, 연결 등이 가능합니다.

리스트 값 접근

리스트에서 값에 접근하려면 인덱스나 인덱스들과 함께 대괄호를 사용하여 슬라이싱하여 해당 인덱스에서 사용 가능한 값을 얻으세요. 예를 들어:

Live Demo
#!/usr/bin/python
list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]

위 코드를 실행하면 다음 결과가 생성됩니다.

list1[0]: physics
list2[1:5]: [2, 3, 4, 5]

리스트 업데이트

할당 연산자 왼쪽에서 슬라이스를 주어 단일 또는 여러 리스트 요소를 업데이트할 수 있으며, append() 메서드로 리스트에 요소를 추가할 수 있습니다. 예를 들어:

Live Demo
#!/usr/bin/python
list = ['physics', 'chemistry', 1997, 2000];
print "Value available at index 2 : "
print list[2]
list[2] = 2001;
print "New value available at index 2 : "
print list[2]

참고 - append() 메서드는 이후 섹션에서 다룹니다.

위 코드를 실행하면 다음 결과가 생성됩니다.

Value available at index 2 : 1997
New value available at index 2 : 2001

리스트 요소 삭제

리스트 요소를 제거하려면 정확히 어떤 요소를 삭제하는지 알 때 del 문을 사용하거나, 모를 때 remove() 메서드를 사용할 수 있습니다. 예를 들어:

Live Demo
#!/usr/bin/python
list1 = ['physics', 'chemistry', 1997, 2000];
print list1
del list1[2];
print "After deleting value at index 2 : "
print list1

위 코드를 실행하면 다음 결과가 생성됩니다.

['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 : ['physics', 'chemistry', 2000]

참고 - remove() 메서드는 이후 섹션에서 다룹니다.

기본 리스트 연산

리스트는 문자열과 매우 비슷하게 +와 * 연산자에 반응합니다. 여기서는 연결과 반복을 의미하지만, 결과는 문자열이 아닌 새 리스트입니다.

사실 리스트는 이전 장에서 문자열에 사용했던 모든 일반 시퀀스 연산에 반응합니다.

파이썬 표현식결과설명
len([1, 2, 3])3길이
[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]연결
['Hi!'] * 4['Hi!', 'Hi!', 'Hi!', 'Hi!']반복
3 in [1, 2, 3]True멤버십
for x in [1, 2, 3]: print x,1 2 3반복

인덱싱, 슬라이싱, 매트릭스

리스트는 시퀀스이므로 인덱싱과 슬라이싱이 문자열과 같은 방식으로 작동합니다.

다음 입력을 가정합니다.

L = ['spam', 'Spam', 'SPAM!']
파이썬 표현식결과설명
L[2]SPAM!오프셋은 0부터 시작
L[-2]Spam음수: 오른쪽부터 카운트
L[1:]['Spam', 'SPAM!']슬라이싱으로 구간 가져오기

내장 리스트 함수 및 메서드

파이썬에는 다음 리스트 함수가 포함되어 있습니다.

번호함수 및 설명
1cmp(list1, list2)

두 리스트의 요소 비교.

2len(list)

리스트 전체 길이 반환.

3max(list)

최댓값을 가진 리스트 항목 반환.

4min(list)

최솟값을 가진 리스트 항목 반환.

5list(seq)

튜플을 리스트로 변환.

파이썬에는 다음 리스트 메서드가 포함되어 있습니다.

번호메서드 및 설명
1list.append(obj)

객체 obj를 리스트에 추가.

2list.count(obj)

obj가 리스트에서 발생한 횟수 반환.

3list.extend(seq)

seq의 내용을 리스트에 추가.

4list.index(obj)

obj가 나타나는 리스트의 가장 낮은 인덱스 반환.

5list.insert(index, obj)

객체 obj를 오프셋 index에 삽입.

6list.pop(obj=list[-1])

마지막 객체 또는 obj를 리스트에서 제거하고 반환.

7list.remove(obj)

객체 obj를 리스트에서 제거.

8list.reverse()

리스트 객체들을 제자리에서 역순으로.

9list.sort([func])

리스트 객체 정렬, 비교 함수 func 주어지면 사용.

python

  1. 파이썬 데이터 타입 마스터하기: 실전 가이드
  2. 파이썬 연산자 마스터하기: 종합 가이드
  3. 파이썬 pass 문 마스터하기: 실전 가이드
  4. 파이썬 함수 인자 마스터하기: 위치, 키워드, 기본 매개변수
  5. 파이썬 range() 함수 마스터하기: 기초부터 고급 활용까지
  6. 파이썬 리스트 마스터하기: Append, 정렬, 길이 & 리스트 컴프리헨션 실전 가이드
  7. 파이썬으로 평균 계산하기: 실전 가이드
  8. 파이썬 list.count() 전문가 가이드: 실전 예제로 배우는 요소 개수 세기
  9. 파이썬 리스트에서 중복 요소 제거하는 8가지 방법
  10. 파이썬 리스트에서 항목 제거하기: remove(), pop(), clear(), del 완벽 가이드