[ Python ] List

duck-ach·2022년 11월 19일
0

Python

목록 보기
5/6

List란?

순서가 있는 객체의 집합을 말한다.

예를들어 지하철에 칸별로 사람이 10명, 20명, 30명 있다고 생각해보자.
이를 파이썬 변수에 담으면

subway1 = 10
subway2 = 20
subway3 = 30

이렇게 표현할 수 있다.
하지만 변수를 3개나 만들어야하고 데이터를 잘 관리하기 위해서 변수들을 한번에 List에 담아서 묶어줄 수 있다.

subway = [10, 20, 30]

코드가 훨씬 간편해진다.

List의 특징

파이썬에서 리스트는 다음과 같은 특징을 가진다.

  • 리스트는 저장되는 요소가 모두 같은 타입일 필요는 없다.
  • 리스트에는 요소들이 순서대로 저장되며, 각 요소는 0부터 시작하는 인덱스(index)를 사용하여 접근한다.
  • 리스트는 그 값을 변경할 수 있다.(Mutable Type)
  • 아무런 요소도 저장하고 있지 않는 리스트를 빈 리스트(empty list)라고 부르며, 파이썬에서는 [] 로 표현할 수 있다.
  • 이와 같은 데이터 타입을 프로그래밍 언어에서는 배열(array)라고도 부르지만, 파이썬에서는 리스트(list)라는 용어만 사용한다.

List 사용해보기

리스트 선언하기

지하철의 첫번째 칸에는 손석구 씨가 타고, 두번째 칸에는 류준열씨가 타고, 세번째 칸에는 강동원 씨가 탔다고 가정하자.

이를 List에 할당하면

subway = ["손석구", "류준열", "강동원"]

이 될것이다.

print(subway)


리스트 요소 선택하기 index()

1번째 칸에 타고 있는 류준열씨를 선택해보자.

print(subway[1])

리스트 명을 적어주고, [] 안에 인덱스(index)값을 할당해주면 해당 인덱스에 있는 요소가 출력된다.

인덱스(index)를 이용하여 류준열씨가 몇 번째 칸에 타고 있는지도 출력할 수 있다.

print("류준열씨는 " , subway.index("류준열") + 1 , "번째 칸에 타고 있습니다.")

인덱스는 0, 1, 2, ... 이렇게 0부터 인덱스를 순서대로 준다. 그래서 +1을 하여 1번째칸, 2번째칸으로 읽을 수 있도록 해준다.


값 추가하기 append()

김태형씨가 다음 정류장에서 4번째 칸에서 탔다. 추가해주자.

subway.append("김태형")


값 추가하기 insert()

그럼 뒤에 추가하지않고 중간에도 추가해보자.
한요한씨가 손석구와 류준열 사이에 탔다.

subway.insert(1, "한요한")

insert를 이용하여 인덱스를 함께 지정해주면 된다.
index는 꼭 0부터 순서대로 세어 삽입한다.


값 삭제하기 pop()

print(subway.pop())
print(subway)

print(subway.pop())와 같이 하면 삭제가 되는 요소를 출력할 수 있다.
현재 ['손석구', '한요한', '류준열', '강동원', '김태형'] 의 형태와 같았으므로 마지막 요소인 김태형이 출력된다.
그리고 print(subway) 를 하면 김태형은 삭제된 채로 리스트가 출력이 된다.

같은 값이 몇개 있는지 확인하기 count()

확인을 위해 같은 값을 하나 더 삽입하고, 정상적으로 2개가 출력이 되는지 확인해보겠다.

subway.append("손석구")
print(subway)
print(subway.count("손석구"))

정렬하기(오름차순 정렬) sort()

값을 마구잡이로 삽입하더라도 순서대로 정렬할 수 있다.
기본적으로 오름차순으로 정렬이 된다.

num_list = [5, 4, 3, 2, 1]
num_list.sort()
print(num_list)

뒤집기(내림차순 정렬) reverse()

오름차순으로 정렬하지 않고 내림차순으로 정렬하고 싶다면 reverse()를 쓰면된다.

num_list = [5, 4, 3, 2, 1]
num_list.reverse()
print(num_list)

모두 지우기 clear()

리스트의 요소들을 초기화 하고싶다면 clear()를 하면 된다.

num_list.clear()
print(num_list)

다양한 자료형 함께 사용

다양한 자료형을 사용하기 어려운 타 언어들과 달리 파이썬은 한 list안에 다양한 데이터 타입의 값을 한번에 삽입할 수 있다.

mix_list = ["류준열", 20, True]

List 확장하기 extend()

리스트 두개를 합칠 수도 있다.

num_list = [5, 2, 4, 3, 1]
mix_list = ["류준열", 20, True]
num_list.extend(mix_list)
print(num_list)


profile
자몽 허니 블랙티와 아메리카노 사이 그 어딘가

0개의 댓글