IT/프로그래밍

[파이썬] 파이썬 리스트 자료형 [패스트 캠퍼스 챌린지 6일차]

뜻밖의 행복 2022. 1. 29. 21:29
반응형

안녕하세요? 파이썬 웹개발 

패스트 캠퍼스 챌린지 6일차 입니다. 

주말 공휴일 없이 무조건 매일 해야 하는 도전 무섭군요

하지만 습관이 되게 잘 계속 이어 가겠습니다.

 

오늘은 리스트 자료형에 대해서 배웠습니다. 

 

프로그래밍은 기본적으로 반복되는 것을 싫어 합니다. 

그래서 여러 데이터가 있는데 그 데이터마다 변수명을 정하기는 귀찮고 

한번에 저장 할 수 있는 수단 중에 하나인 리스트 자료형을 이용합니다. 

리스트 자료형 역시 사용하기 쉽습니다.

 

리스트명 = [데이터, 데이터, ... , 데이터] 를 하면 리스트에 데이터들을 할당 할 수 있습니다.

그냥 변수와 다르게 [ ] 이것으로 감싸준다는 것이 특징이죠

리스트 = [데이터, 데이터, 데이터]

리스트를 만들때는 반드시 처음 부터 데이터를 할당 할 필요없이 

바로 리스트 = [] 로도 할당 가능합니다. 

 

리스트 인덱스

리스트명 = ["빨", "주", "노", "초", "파", "남", "보"]
print(리스트명[0])
print(리스트명[1])
print(리스트명[2])
print(리스트명[3])
print(리스트명[4])
print(리스트명[5])
print(리스트명[6])

리스트에는 인덱스라는 것이 있습니다. 

번역하면 차례 정도 되겠는데 실제로 써보면 매우 간단합니다. 

리스트명[0 ~ 리스트 데이터수 - 1] 까지 하면 해당 숫자에 있는 리스트 데이터가 선택됩니다. 

여기서 주의할 점은 1부터 시작이 아니라 0부터 시작이라는 것입니다.

따라서 위 예제를 보시면 [0]이 빨 인것을 알 수 있습니다.

 

 

 
 
 

 

리스트 기본적인 조작

 

데이터 추가, 데이터 할당, 데이터 삭제, 슬라이싱, 리스트 길이, 리스트 정렬 6가지 기본 조작 법에 대해 알아 보겠습니다.

 

첫 번째 데이터 추가

파이썬 리스트 자료형 데이터 추가

seren = ["a","b","c","d"]

#데이터 추가 리스트.append(데이터)
print(seren)
print("리스트에 데이터를 추가 해보겠습니다. e 를 추가하자!")
seren.append("e")
print(seren)
print("어머머 진짜 추가 되었네:?")

리스트명.append(데이터) 를 하면 위처럼 추가를 할 수 있습니다. 

전혀 어렵지 않죠?

 

데이터 할당

파이썬 리스트 자료형 데이터 할당

seren = ["a","b","c","d"]

#데이터 할당 리스트[인덱스] = 데이터
print(seren)
print("리스트에 데이터를 할당 해보겠습니다. b 를 바꿔보겠다")
seren[1] = "B"
print(seren)
print("작은 b가 큰 B가 되었어!")

이제는 기존에 있던 데이터 대신 다른 데이터를 할당 하는 방법입니다. 

리스트[인덱스] = 데이터 로 할당을 합니다. 

보통 할당 때는 = 을 쓰니 익숙합니다.

위 예제에는 b를 대문자 B로 새로 할당 하는 것인데 

인덱스는 0 부터 시작이니 두번째에 있는 b가 1입니다. 

그래서 seren[1] = "B"로 하면 a가 아닌 b가 B로 할당 되는 것이지요

 

그 다음은 데이터 삭제

 

파이썬 리스트 자료형 데이터 삭제

seren = ["a","b","c","d"]

#데이터 삭제 del 리스트[인덱스]
print(seren)
print("리스트에 데이터를 삭제 하겠습니다. B 즐거웠다. 잘가라!")
del seren[1] 
print(seren)
print("B가 사라졌어 어메이징")

네 추가, 할당을 했으면 삭제는 이해 하기 더 쉽습니다.

del 리스트[인덱스]를 주면 삭제 가능합니다. 

 

실제로 del seren[1] 을 하니까 seren 리스트에서 2번째에 있는 데이터 b가 사라져 버렸죠!

이제 우리는 이렇게 리스트를 마음대로 할 수 있는 능력을 점점 손에 넣어가네요

강해지는 것이 느껴지십니까?

 

슬라이싱

뭔가 원본에서 일부만 잘라오는 느낌인데 실제로도 그렇습니다.

리스트[시작:끝+1] 을 하면 선택된 부분을 가져옵니다.

파이썬 리스트 슬라이드

seren = ["a","b","c","d"]

#슬라이싱 리스트[시작:끝+1]
print(seren[1:3])

a,b,c,d 중 b,c만 가져오고 싶다면 

b가 인덱스로 1이니까 1을 주면 되고 c는 인덱스로 2인데 

가져오고 싶은 값 인덱스에 + 1을 해야 해서 3을 줘야 합니다. 

따라서 seren[1:3]을 하면 b,c를 가져올 수 있겠죠?

 

리스트 길이

이 리스트에 데이터가 몇개가 있어서 

길이가 얼마나 되는지 궁금할 때 사용하는 기능입니다.

파이썬 리스트 길이

seren = ["a","b","c","d"]

#리스트 길이 len(리스트)
print(len(seren))

len(리스트) 로 사용합니다. 너무 간단하죠?

 

리스트 정렬

 

파이썬 리스트 정렬

가끔 리스트를 순서대로 깔끔하게 정렬 하고 싶을때가 있는데 그때 사용하면 됩니다.

리스트.sort() 로 사용 가능하며 

위 예제를 보시면 바로 a, b, c, d로 아름답게 정렬이 된 것을 볼 수 있습니다.

 

seren = ["b","d","c","a"]

#리스트 정렬 리스트.sort()
seren.sort()
print(seren)

 

오늘 리스트를 다루는 막강한 방법들에 대해 배웠습니다.

이렇게 많은 것을 배워가는 제 자신이 너무 두렵군요!

 

반응형