CodingTest/Python 문법

리스트

seongduck 2022. 7. 4. 17:50

리스트 컴프리헨션

  • 리스트를 초기화 하는 방법
  • 조건문과 반복문을 활용하여 초기화
  • 2차원 리스트를 초기화할 때 가장 효과적
array = [i for i in range(10)] 				#0~9까지 리스트 초기화
array = [i for i in range(10) if i % 2 == 1]		#0~9까지 홀수만 포함
array = [i * i for i in range(1,10)]			#1~9까지 i제곱만 포함
array = [[0] * m for _in range(n)]			# N*M 크기의 2차원 리스트 초기화

N * M 크기의 2차원 리스트 초기화

n = 4
m = 3
array = [[0] * m for _in range(n)]
print(array)

#실행 결과
[[0,0,0],[0,0,0],[0,0,0],[0,0,0]]


_ 언더바 사용

  • 반속을 수행할 때 반복을 위한 변수의 값을 무시하고자 할 때 사용
for _in range(5):
	print("Hello World")

리스트 관련 기타 메소드

함수명 사용법 설명 시간 복잡도
append() 변수명.append() 리스트에 원소를 하나 삽입할 때 사용 O(1)
sort() 변수명.sort() 기본 정렬 기준으로 오름차순 정렬 O(NlogN)
변수명.sort(reverse = True) 내림차순으로 정렬
reverse() 변수명.reverse() 리스트의 원소의 순서를 모두 반대로 O(N)
insert() insert(삽입할 위치, 값) 특정 인덱스 위치에 원소를 삽입 O(N)
count() 변수명.count(특정 값) 리스트에서 특정한 값을 지닌 데이터의 개수 O(N)
remove() 변수명.remove(특정 값) 특정한 값을 지닌 원소를 제거, 여러개면 하나만 O(N)

 

a = [4,3,2,1]

a.reverse() 		#리스트 원소 뒤집기
[1,2,3,4]

a.insert(2,3)		#특정 인덱스 추가
[1,2,3,3,4]

a.count(3)		#특정 값 데이터 수 세기
2

a.remove(1)		#특정 값 데이터 삭제
[2,3,3,4]

리스트에서 특정 값을 가지는 원소를 모두 제거하기

a = [1,2,3,4,5,5,5]
remove_set = {3,5}	

result = [i for i in a if not in remove_set]

a라는 리스트가 i라는 변수를 하나씩 확인해서 remove_set 집합에 들어있지 않는 변수를 result를 출력

즉 3, 5아닌 모든 수를 저장

실행 결과
[1,2,4]

 

'CodingTest > Python 문법' 카테고리의 다른 글

함수  (0) 2022.07.04
반복문  (0) 2022.07.04
조건문  (0) 2022.07.04
표준 입/출력  (0) 2022.07.04
자료형  (0) 2022.07.04