Python/파이썬 기초

<인프런_파이썬 기본편> 자료구조 - 리스트(index, append, insert, pop, sort, reverse, clear, extend )

eun_coco 2022. 7. 16. 19:10

# 리스트 [] 만들기

예를 들어, 지하철 칸별로 10명, 20명, 30명 을 표현하기 위해서
subway1 = 10, subway2 = 20, subway3 = 30

라고 표현할 수 있다.

 

이 경우에는, 리스트를 활용해서 표현하는 것이 더 효율적이다.

 

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

subway = ["유재석", "조세호"]
print(subway)

 

<출력결과>

[10, 20, 30]
['유재석', '조세호']


# 리스트의 index 출력하기 ( (리스트명).index() )

ex)

print(subway.index("조세호"))

 

<출력결과>

1


# 리스트에 원소 추가하기 ( (리스트명).append() )
ex)

subway.append("하하")
print(subway)

 

<출력결과>

['유재석', '조세호', '하하']

-> 리스트의 맨 끝에 원소가 추가된다.


# 리스트의 특정 원소들 사이에 원소 추가하기 ( (리스트명).insert(원소, 위치) )

ex)

subway.insert("정형돈", 1)
print(subway)

 

<출력결과>

['유재석', '정형돈', '조세호', '하하']

-> subway[1]에 "정형돈"이 삽입된다.


# 리스트에 있는 원소들을 한 개씩 뒤에서 꺼냄 ( (리스트명.pop() )

ex)

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

 

<출력결과>

하하
['유재석', '정형돈', '조세호']

 

-> 원래 subway = ['유재석', '정형돈', '조세호', '하하'] 였다.

print(subway.pop() 을 통해서 리스트의 맨 끝에 있는 '하하'가 출력된다,

그리고 subway 리스트에는 '하하' 원소가 사라지고 ['유재석', '정형돈', '조세호'] 만이 남게 된다.


# 같은 원소가 몇 개 있는지 확인하기

ex)

subway.append("유재석")
print(subway)
print(subway.count("유재석"))

 

<출력결과>

['유재석', '정형돈', '조세호', '유재석']
2

-> subway 리스트에 '유재석' 원소를 하나 더 추가하게 되고, subway 리스트에 '유재석'은 총 2개가 있으므로 

subway.count("유재석") 은 2가 출력된다.


# 리스트 정렬하기 ( (리스트명).sort() )

ex)

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

 

<출력결과>

[1, 2, 3, 4, 5]


# 순서 뒤집기 ( (리스트명.reverse() )

ex)

num_list.reverse()
print(num_list)

 

<출력결과>

[5, 4, 3, 2, 1]


# 리스트 내 원소 모두 지우기 ( (리스트명).clear() ) 

ex)

num_list.clear()
print(num_list)

 

<출력결과>

[]


# 다양한 자료형과 함께 사용

ex)

num_list = [5,2,4,3,1]
mix_list = ["조세호", 20, True]
print(mix_list)

 

<출력결과>

['조세호', 20, True]


# 리스트 확장하기 ( (기존 리스트명).extend(붙일 리스트명) )

ex)

num_list.extend(mix_list)
print(num_list)

 

<출력결과>

[5, 2, 4, 3, 1, '조세호', 20, True]

-> num_list 에 mix_list 가 합쳐진다.


# 리스트 []

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

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

subway = ["유재석", "조세호"]
print(subway)

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

# 리스트에 원소 추가하기_ 하하씨가 다음 정류장에서 다음 칸에 탐
subway.append("하하")
print(subway)

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

# 지하철에 있는 사람을 한 명씩 뒤에서 꺼냄
print(subway.pop())
print(subway)

# 같은 이름의 사람이 몇 명 있는지 확인
subway.append("유재석")
print(subway)
print(subway.count("유재석"))

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

# 순서 뒤집기
num_list.reverse()
print(num_list)

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

# 다양한 자료형과 함께 사용
num_list = [5,2,4,3,1]
mix_list = ["조세호", 20, True]
print(mix_list)

# 리스트 확장
num_list.extend(mix_list)
print(num_list)