Python

[파이썬 Python] 리스트

microsaurs 2022. 12. 5. 10:52

리스트는 순서를 가진 객체의 집합입니다.

 

1. 리스트 생성

# 지하철 칸 별로 10명, 20명, 30명
subway1 = 10
subway2 = 20
subway3 = 30

subway = [10, 20, 30]
print(subway) # [10, 20, 30]

subway = ["유재석", "조세호", "박명수"]
print(subway) # ["유재석", "조세호", "박명수"]

리스트는 리스트명 = [a , b, c] 형식으로 생성해주면 됩니다.

 

 

2. 리스트의 인덱스

리스트의 인덱스는 0부터 시작해서 차례대로 순서가 매겨집니다.

리스트명.index( 내용 ) 을 이용하면 내용이 있는 인덱스를 출력할 수 있습니다.

# 조세호씨가 몇 번째 칸에 타고 있는가?
print(subway.index("조세호")) # 1

 

3. append : 인덱스 내용 추가

리스트에 내용을 추가하고 싶을 때는 append 명령어를 사용하면 됩니다.

리스트명.append( 내용 )

# 하하씨가 다음 정류장에서 다음 칸에 탐 (인덱스에 추가)
subway.append("하하")
print(subway) # ["유재석", "조세호", "박명수", "하하"]

 

4. insert : 인덱스 사이에 내용 삽입

인덱스 중간에 내용을 삽입하고 싶을 때는 insert 명령어를 사용합니다.

# 정형돈씨를 유재석 / 조세호 사이에 태워봄
subway.insert(1, "정형돈")
print(subway) # ["유재석", "정형돈", "조세호", "박명수", "하하"]

 

5. pop : 리스트 뒤에 있는 내용부터 하나씩 꺼냄

pop 명령어를 사용하면 리스트의 마지막 인덱스 내용을 삭제합니다.

또한, 괄호 안에 인덱스 번호를 적어주면 그 인덱스 내용을 삭제할 수 있습니다.

# 지하철에 있는 사람을 한 명씩 뒤에서 꺼냄
print(subway.pop())
print(subway) # ["유재석", "정형돈", "조세호", "박명수"]
print(subway.pop())
print(subway) # ["유재석", "정형돈", "조세호"]
print(subway.pop())
print(subway) # ["유재석", "정형돈"]

이때, pop 명령어는 삭제한 값을 취득할 수 있습니다.

subway = ["유재석", "정형돈", "조세호", "박명수", "하하"]
print(subway.pop()) # 하하
print(subway.pop()) # 박명수
print(subway.pop()) # 조세호

 

6. count : 괄호 안의 내용이 몇 번 등장하는지 계산 후 출력

count 함수를 이용하면 같은 내용이 몇 번 나오는지 셀 수 있습니다.

# 같은 이름의 사람이 몇 명 있는지 확인
subway.append("유재석")
print(subway) # ["유재석", "정형돈", "유재석"]
print(subway.count("유재석")) # 2

 

 

 

파이썬의 리스트는 정렬도 가능합니다.

 

1. sort : 오름차순으로 정렬

# 정렬도 가능
num_list = [5,2,4,3,1]
num_list.sort()
print(num_list) # [1,2,3,4,5]

 

2. reverse : 정렬 순서 뒤집기

# 순서 뒤집기 가능
num_list.reverse()
print(num_list) # [5,4,3,2,1]

 

3. clear : 인덱스 모두 삭제

# 모두 지우기
num_list.clear()
print(num_list) # []

 

 

 

파이썬의 리스트는 다양한 자료형을 함께 사용할 수 있습니다.

# 다양한 자료형 함께 사용 가능
mix_list = ["조세호", 20, True]
print(mix_list) # ["조세호", 20, True]

 

 

그리고 여러 개의 리스트를 확장하여 하나로 합치는 기능도 있습니다.

expand : 리스트 확장

# 리스트 확장
num_list = [5,2,4,3,1]
mix_list = ["조세호", 20, True]
num_list.extend(mix_list)
print(num_list) # [5,2,4,3,1,"조세호", 20, True]