English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

파이썬 기본 가이드

파이썬 프로세스 제어

Python 함수

Python 데이터 타입

파이썬 파일 작업

Python 객체와 클래스

Python 날짜와 시간

Python 고급 지식

Python 참조 매뉴얼

Python 리스트(List)

이 기사에서는 Python 리스트에 대해 모든 것을 배울 것입니다; 그들의 생성, 슬라이싱, 요소 추가와 제거 등.

Python은 일반적으로 시퀀스로 불리는 복합 데이터 타입 시리즈를 제공합니다. List는 Python에서 가장 자주 사용되고 가장 널리 사용되는 데이터 타입 중 하나입니다.

리스트(List)를 어떻게 만드는가요?

Python 프로그래밍에서는, 모든 항목(요소)을 괄호 [] 안에 넣고 콤마로 구분하여 리스트를 생성합니다.

그들은 무한히 많은 항목을 가질 수 있으며, 이들은 다른 타입(정수, 실수, 문자열 등)을 가질 수 있습니다.

# 공백 리스트
my_list = []
# 정수 리스트
my_list = [1, 2, 3]
# 혼합 데이터 타입의 리스트
my_list = [1, "Hello", 3.4]

이와 같이, 리스트는 다른 리스트를 항목으로 가질 수 있습니다. 이는 내부 리스트라고 합니다.

# 가장 내부 리스트
my_list = ["mouse", [8, 4, 6], ['a']]

리스트에서 항목에 접근하는 방법은 무엇인가요?

리스트의 요소에 접근할 수 있는 여러 가지 방법이 있습니다.

리스트 인덱싱

리스트에서 항목에 접근할 수 있는 인덱스 연산자 []를 사용할 수 있습니다. 인덱스는 0에서 시작되며, 따라서, 포함5요소가 있는 리스트의 인덱스는 0부터4.

다른 요소에 접근하려면, 그렇지 않으면 IndexError가 발생합니다. 인덱스는 정수여야 합니다. float 또는 다른 타입을 사용할 수 없습니다. 이는 TypeError를 유발할 수 있습니다.

가장 내부 리스트에 접근할 수 있는 내부 인덱싱을 사용합니다.

my_list = ['p','r','o','b','e']
# 출력: p
print(my_list[0])
# 출력: o
print(my_list[2]
# 출력: e
print(my_list[4]
# 에러! 인덱싱에 사용할 수 있는 것은 정수만입니다
# my_list[4].0]
# 가장 내부 리스트
n_list = ["Happy", [2,0,1,5]]
# 가장 내부 인덱싱
# 출력: a
print(n_list[0][1]    
# 출력: 5
print(n_list[1][3]

음수 인덱싱

Python은 시퀀스에 대한 음수 인덱싱을 허용합니다. 인덱스-1마지막 항목을 나타냅니다.-2이는 마지막 두 번째 항목을 나타냅니다. 이와 같이 계속됩니다.

my_list = ['p','r','o','b','e']
# 출력: e
print(my_list[-1]
# 출력: p
print(my_list[-5]

Python에서 리스트를 슬라이싱하는 방법은 무엇인가요?

리스트에서 일련의 항목에 접근할 수 있는 슬라이싱 연산자(콜론:)를 사용할 수 있습니다.

my_list = ['p','r','o','g','r','a','m','i','z']
# 부터3요소까지5개 요소
print(my_list[2:5]
# 부터4개 요소
print(my_list[:-5]
# }}6요소부터 끝까지
print(my_list[5:])
# 요소에서 시작하여 끝까지
print(my_list[:])

다음과 같은 요소 사이에서 인덱스를 고려하여 슬라이싱을 통해 최상의 시각 효과를 얻을 수 있습니다. 우리가 목록에서 특정 범위에 접근하고자 한다면, 그 부분을 나누기 위해 두 인덱스가 필요합니다.

목록에 항목을 변경하거나 추가하는 방법은 무엇인가요?

목록은 변경 가능하므로, 그 요소는 변경될 수 있으며, 그와는 달리string또는tuple.

우리는 대입 연산자 (=)를 사용하여 하나의 항목이나 여러 항목을 변경할 수 있습니다.

# 값 목록
odd = [2, 4, 6, 8]
# 첫 번째 요소 변경    
odd[0] = 1            
# 출력: [1, 4, 6, 8]
print(odd)
# 변경된2까지4항목
odd[1:4] = [3, 5, 7]  
# 출력: [1, 3, 5, 7]
print(odd)

우리는 append() 메서드를 사용하여 하나의 항목을 목록에 추가할 수 있으며, 또는 extend() 메서드를 사용하여 여러 항목을 목록에 추가할 수 있습니다.

odd = [1, 3, 5]
odd.append(7)
# 출력: [1, 3, 5, 7]
print(odd)
odd.extend([9, 11, 13]
# 출력: [1, 3, 5, 7, 9, 11, 13]
print(odd)

또한, 우리는+연산자를 결합하여 목록을 생성합니다. 이를 연결라고도 합니다.

*연산자를 반복하여 목록을 생성합니다.

odd = [1, 3, 5]
# 출력: [1, 3, 5, 9, 7, 5]
print(odd + [9, 7, 5]
# 출력: ["re", "re", "re"]
print(["re"] * 3)

또한, 우리는 insert() 메서드를 사용하여 필요한 위치에 항목을 삽입할 수 있으며, 여러 항목을 하나의 목록의 공백 슬라이스에 압축하여 여러 항목을 삽입할 수도 있습니다.

odd = [1, 9]
odd.insert(1,3)
# 출력: [1, 3, 9] 
print(odd)
odd[2:2] = [5, 7]
# 출력: [1, 3, 5, 7, 9]
print(odd)

목록에서 항목을 제거하거나 항목을 제거하는 방법은 무엇인가요?

우리는 del 키워드를 사용하여 목록에서 하나나 여러 항목을 제거할 수 있으며, 목록을 완전히 제거할 수도 있습니다.

my_list = ['p','r','o','b','l','e','m']
# 항목을 제거
del my_list[2]
# 출력: ['p', 'r', 'b', 'l', 'e', 'm']     
print(my_list)
# 여러 항목을 제거
del my_list[1:5]  
# 출력: ['p', 'm']
print(my_list)
# 모든 목록을 제거
del my_list       
# 오류: List not defined
print(my_list)

우리는 remove() 메서드를 사용하여 주어진 항목을 제거할 수 있으며, 또는 pop() 메서드를 사용하여 주어진 인덱스处的 항목을 제거할 수 있습니다.

인덱스가 제공되지 않으면, pop() 메서드는 마지막 항목을 제거하고 반환합니다. 이는 우리가 목록을 스택(최근 입력 우선 데이터 구조)로 구현하는 데 도움이 됩니다.

우리는 clear() 메서드를 사용하여 목록을 비울 수 있습니다.

my_list = ['p','r','o','b','l','e','m']
my_list.remove('p')
# 출력: ['r', 'o', 'b', 'l', 'e', 'm']
print(my_list)
# 출력: 'o'
print(my_list.pop(),)1))
# 출력: ['r', 'b', 'l', 'e', 'm']
print(my_list)
# 출력: 'm'
print(my_list.pop())
# 출력: ['r', 'b', 'l', 'e']
print(my_list)
my_list.clear()
# 출력: []
print(my_list)

마지막으로, 요소에 공백 목록을 할당하여 목록에서 항목을 제거할 수도 있습니다.

>>> my_list = ['p','r','o','b','l','e','m']
>>> my_list[2:3] = []
>>> my_list
['p', 'r', 'b', 'l', 'e', 'm']
>>> my_list[2:5] = []
>>> my_list
['p', 'r', 'm']

Python 목록 메서드

아래는 Python 프로그래밍에서 list 객체가 사용할 수 있는 메서드를 나열합니다.

그들은 list.method() 방식으로 접근됩니다. 이미 몇 가지 메서드를 사용했습니다.

Python 목록 메서드
append() -요소를 목록의 마지막에 추가합니다
extend() -목록의 모든 요소를 다른 목록에 추가합니다
insert() -지정된 인덱스에 요소를 삽입합니다
remove() -목록에서 하나의 항목을 제거합니다
pop() -지정된 인덱스에서 요소를 제거하고 반환합니다
clear() -목록에서 모든 항목을 제거합니다
index() -첫 번째 일치 항목의 인덱스를 반환합니다
count() -전달된 항목 수를 반환합니다
sort() -목록 내 항목을 오름차순으로 정렬합니다
reverse() -목록 내 항목의 순서를 반전합니다
copy() -목록의 반복 복사를 반환합니다

Python 목록 메서드의 몇 가지 예제:

my_list = [3, 8, 1, 6, 0, 8, 4]
# 출력: 1
print(my_list.index(8))
# 출력: 2
print(my_list.count(8))
my_list.sort()
# 출력: [0, 1, 3, 4, 6, 8, 8]
print(my_list)
my_list.reverse()
# 출력: [8, 8, 6, 4, 3, 1, 0]
print(my_list)

리스트 이해:새로운 목록을 생성하는 아름다운 방법

리스트 이해는 Python의 기존 목록에서 새로운 목록을 생성하는 간결하고 명확한 방법입니다.

리스트 이해는 표현식을 가지고 있으며, 대괄호 안에 있습니다.for 문.

이는 각 항목이 증가하는 목록을 나열합니다.2의冪의 예제입니다.

pow2 = [2 ** x for x in range(10)
# 출력: [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
print(pow2)

이 코드는 동일합니다.

pow2 = []
for x in range(10)
   pow2.append(2 ** x)

리스트推导는 더 많은 for을 선택할 수 있습니다.if 문선택 if 문은 새로운 목록 항목을 필터링할 수 있습니다. 여기 몇 가지 예제가 있습니다.

>>> pow2 = [2 ** x for x in range(10) if x > 5]
>>> pow2
[64, 128, 256, 512]
>>> odd = [x for x in range(20) if x % 2 == 1]
>>> odd
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
>>> [x+y for x in ['Python ','C '] for y in ['Language','Programming']]
['Python Language', 'Python Programming', 'C Language', 'C Programming']

파이썬의 다른 리스트 작업

리스트 구성원资格 테스트

키워드 in을 사용하여 리스트에 항목이 존재하는지 테스트할 수 있습니다.

my_list = ['p','r','o','b','l','e','m']
# 출력: True
print('p' in my_list)
# 출력: False
print('a' in my_list)
# 출력: True
print('c' not in my_list)

리스트 순회

for 루프를 사용하면 리스트의 각 항목을 순회할 수 있습니다.

for fruit in ['apple','banana','mango']:
    print("I like",fruit)