[python] 리스트

전상욱·2021년 4월 16일
0

Python

목록 보기
3/14
post-thumbnail

기본적인 자료형을 공부했지..[] , list 등등
심화학습 한번 해보자?

list 에'추가' 하고 싶다니까? 몇개 알아보자

  1. append

a = [10, 20, 30]
a.append(500)
print(a)
>>> [10, 20, 30, 500]

b = [10,20,30,40]
b.append([50,60])
print(b)
print(len(b))
>>> [10, 20, 30, 40, [50, 60]] 중첩리스트가 들어갑니다요
>>> 5

2.extend

b = [10,20,30,40]
b.extend([50,60])
print(b)
print(len(b))
>>> [10,20,30,40,50,60]
>>> 6
  • POINT 는!!! append는 리스트에 리스트 그냥 넣는거고 extend는 확장? 하는 개념이고
    extend에 전달된 리스트의 길이만큼 늘어난다.(원래 리스트가..)

3.insert (정확한 위치에 추가해보자!!)

>>> a = [10,20,30]
>>> a.insert(1, 60) # a[1]자리에 60을 넣겠다!
>>> [10,60,20,40]
>>> len(a)
>>> 4

패턴: insert(0, 요소) --> 맨 처음에 요소 넣겠다. insert(len(x),요소) --> 리스트 끝에 요소를 추가하겠다.


list에 추가 했으면 빼보기도 해야지?

  1. pop() : 마지막요소, 마지막요소, 마지막요소, !!!! 또는 인덱스의 요소를 삭제
>>> x = [1,2,3]
>>> x.pop()
>>> 3
>>> x
>>> [1,2]
>>> x = [1,2,3,]
>>> x.pop(1)
>>> 2
>>> x
>>> [1,3]
  1. remove(): list의 인덱스로 지우는게 아니고 값을 지우는 특정 값을 지우는!! pop()과 차이점이다.
>>> x = [1,2,3]
>>> x.remove(2)
>>> 2
>>> x
>>> [1,3]
  1. index() : list의 인덱스값을 알고 싶을때 쓰는거지

  2. count() : list에서 '특정값'의 개수를 구함 ()안에 있는게 [] 에 몇개 있냐는거임

  3. reverse(): list 요소의 순서를 반대로 뒤집는거야.

  4. sort() : 요걸 자주 사용 하는데 오름차순으로 정렬해주는거야

  5. sort(reverse = True) : 내림차순으로 정렬

    • sort 와 sorted(내장함수) 의 차이를 알아?
      sort 는 리스트를 변경하고, sorted는 새 리스트를 만드는거임
  6. clear() : list안에 모두 날려버려


리스트 요소들을 출력해 보자

우리가 많이 본 for 문을 이용!

for i in list:
	code 
  • 인덱스와 함께 요소들을 출력하고 싶다면?

for index, value in enumerate(list):
	print(index, value)

# 인덱스는 0부터 시작하니까 1 부터 시작하고 싶다면
for index, value in enumerate(list):
	print(index + 1, value)

for index, value in enumerate(list, start=1):
	print(index, value)

  • list요소들을 출력하고, list 안의 index값과 함께 출력해 보았다. 그럼! 인덱스로 요소들을 출력하고 싶다면??
# 이런식으로 특정 index 값으로 접근가능
a = [12,45,67,78]
for i in range(len(a)):
	print(a[2])  

while 문으로 list를 출력해보자

# 여기서 for 문과 다르게 i 를 인덱스로 활용한다.

a = [12,45,67,78]
i = 0
while i < len(a):
	print(a[i])
    i += 1

리스트 표현식

리스트 안에 for 문과 if 문을 사용할 수 있다.(리스트 컴프리헨션) 여러번도 가능
for

  • a = [i for i in range(10)] ( 대괄호 방식이 better )
  • b = list(i for in range(10))

if

  • a = [i for i in range(10) if i % 2 == 0]
    순서가 range에서 0-9까지 숫자를 뽑아내서, if문을 거치고, i러 list 생성

리스트안에서 map 사용해보기

  • map(): list의 요소를 지정된 함수로 처리해주는 함수/ 새 list 생성
  • list(map(함수, list))
a = list(map(str, range(3)))
['0','1', '2']
profile
someone's opinion of you does not have to become your reality

0개의 댓글