python list

이지선·2023년 5월 24일

list는 변수마다 값을 할당해서 사용하기에 어려움이 있으므로 하나의 변수로 여러개의 데이터를 관리

list는 []로 표현되며, index와 slicing을 사용할 수 있다.
(파이썬에는 list 라고 부르지만 다른 언어로는 배열이라고도 한다.)

(1) .index(찾는 값)

찾는값의 인덱스를 리턴한다.

문자열은 find를 사용했으나 list에서는 find를 사용할 수 없다
AttributeError: 'list' object has no attribute 'find'

poke = ['피카츄','라이츄','파이리','꼬부기','야도란']
print(poke.index('라이츄')) #'라이츄'는 몇번째에 위치해있는가?
1

(2) 문자 list를 문자열로 바꾸기<->, list(), join()

list() 함수를 쓰는 경우 단어 하나하나가 요소로 변환되고, split는 공백을 기준으로 리스트 변환된다.

구분자.join(리스트)
이러면 구분자를 기준으로 합쳐진다.

print(list(str1)) #['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd', ' ', 'p', 'y', 't', 'h', 'o', 'n']
print(str1.split()) #['hello', 'world', 'python']
print(''.join(list_str)) #helloworldpython
print(','.join(list_str)) #hello,world,python

list()
리스트로 타입을 변화시킨다.

a = 'apple'
print(list(a))
'a','p','p','l','e'

(3) len()

list의 길이를 구한다.

list2 = ['피카츄','라이츄','파이리','꼬부기']
print(len(list2))

(4) .count(값)

리스트에서 원하는 값이 몇개있는지 센다.

print(list2.count('피카츄'))
1

(5) 특정 요소 삭제하기 (del / remove)

지우고 싶은 위치를 알 때 : del
지우고 싶은 값을 알 때 : remove

del 사용하기
del 리스트명[인덱스]

a = [1,2,3,4,5,6,7]
del a[2]
print(a) # [1, 2, 4, 5, 6, 7]
del a[2:6]
print(a) # [1, 2]

remove 사용하기

a = [1,2,3,4,5,6,7]
a.remove(1)
print(a) # [2, 3, 4, 5, 6, 7]

del은 예약어, remove는 메소드

(6) 요소 추가하기 .inset(index,요소) , .append(요소), .extend(리스트)

poke = ['피카츄','라이츄','파이리','꼬부기','야도란']
a = '야도란'
b = ['피존투','또가스']
c = '파이리'

isert 중간에 추가시킬 수 있다.

poke.insert(3,c) # ['피카츄', '라이츄', '파이리', '파이리', '꼬부기', '야도란']
print(poke)

append 맨 뒤로 값이 추가된다.

poke.append(a) # ['피카츄', '라이츄', '파이리', '파이리', '꼬부기', '야도란', '야도란']
print(poke)

extend, iterable 객체를 list에 추가할 때 사용함. 각 요소를 꺼내어 맨 뒤에 추가함
리스트 안에 리스트를 넣어야 하는데 리스트 타입으로 넣기 싫고 요소 하나씩 넣고 싶을 때

poke.extend(b)
print(poke) # ['피카츄', '라이츄', '파이리', '파이리', '꼬부기', '야도란', '야도란', '피존투
', '또가스']

(7) 정렬

정렬은 오름차순 정렬이 기본이다. (낮은데서 높은데로 올라가는거, 1부터 101로 프듀 같은)
숫자, 문자 모두 오름차순/내림차순 정렬이 가능하다.

sort(reverse=False) : 정렬(거꾸로=아뇨) 오름차순 정렬이 기본이므로 괄호 안을 생략해도 됨(sort()

num1 = [5,4,6,3,1,2,7]
num1.sort()
print(num1) #[1, 2, 3, 4, 5, 6, 7]

sort(reverse=True) : 정렬(거꾸로=네) 내림차순 정렬

num1.sort(reverse=True)
print(num1) # [7, 6, 5, 4, 3, 2, 1]

reverser() 내림차순 함수

chlist = ['a','b','d','c','e','g','f']
chlist.reverse()
print(chlist) #['f', 'g', 'e', 'c', 'd', 'b', 'a']

(8) 마지막 요소(맨 끝자리) 골라내기 pop()

pop은 맨뒤의 요소를 가져가면서, 가져간 요소를 return한다. (안받으면 안보이지)

num1 = [5,4,6,3,1,2]
num1.pop() # 2 날라감
last_value = num1.pop() # 1 날라감
print(last_value) # 1
print(num1) #[5, 4, 6, 3] pop이 두번이니까 2개 날라감

profile
Data Analyst

0개의 댓글