티스토리 뷰

리스트에 적용할 수 있는 기본 함수

min() # 리스트 내부에서 최솟값을 찾음
max() # 리스트 내부에서 최댓값을 찾음
sum() # 리스트 내부에서 값을 모두 더함

>>>number = [103, 22, 4, 0]
>>>min(number)
0
>>>max(number)
103
>>>sum(number)
129

 

리스트 내포

반복문을 사용하여 리스트를 재조합 할 때 코드를 한 줄로 작성할 수 있는 방법

리스트 이름 = [표현식 for 반복자 in 반복할 수 있는 것]
리스트 이름 = [표현식 for 반복자 in 반복할 수 있는 것 if 조건문] # if 구문을 포함

# 변수 선언
array = []

# 반복문을 적용
for i in range(0, 20, 2) :
	array.append(i * i)
print(array)

# 실행결과
[0, 4, 16, 36, 64, 100, 144, 196, 256, 324]


# 리스트 내포 사용
array_a = [i * i for i in range(0, 20, 2)]
print(array_a)

# 실행결과
[0, 4, 16, 36, 64, 100, 144, 196, 256, 324]

# 조건을 활용 한 리스트 내포
array_b = ["사과", "체리", "수박", "레몬"] 
output = [fruit for fruit in array_b if fruit != "레몬"]  # 레몬이 array_b에있다면 빼고 출력
print(output)

# 실행결과
['사과', '체리', '수박']

 

reversed()

순서가 있는 자료형(이터러블)의 요소 순서를 반대로 만들어 줄때 reversed() 함수를 사용한다.

reversed 함수의 리턴값은 '이터레이터' 이기 때문에 예제와 같이 <list_reverseiterator object at 주소> 로 반환된다.

메모리의 효율성을 위해 리스트를 복제한 뒤 뒤집어서 반환하는 것보다 기존 리스트를 활용해서 작업하는 것이 효율적이라고 판단.

 

※ 이터레이터 : 이터레이터는 next() 함수 호출 시 계속 그다음 값을 반환하는 객체. 이터러블(iterable)과 비슷하지만 다르다. 또한, 이터레이터는 for문을 이용하여 반복하고 난 후에는 다시 반복하더라도 더는 그 값을 가져오지 못하는 특징이 있다. (제너레이터)

 

 enumerate()

 순서가 있는 자료형(리스트, 튜플, 문자열) 매개변수로 입력으로 받아 인덱스를 포함하는 enumerate 객체를 돌려준다.

enumerate 함수의 리턴값도 '이터레이터'로 로 반환된다.

※ 보통 enumerate 함수는 for문과 함께 자주 사용한다.

reversed() # 리스트 내부 요소의 순서를 반대로 만들어줌
enumerate() # 리스트 내부 인덱스와 요소를 출력

list_a = [1, 2, 3, 4, 5]
list_reversed  = reversed(list_a)

# reversed() 함수는 '이터레이터' 형식의 값을 반환하기 때문에 객체의 주소가 반환됨
>>>print(list_reversed)
<list_reverseiterator object at 0x000001C8E6F5E3E0> 

# reversed 함수와 반복문을 조합하여 바로 사용
for i in reversed(list_a) :
    print(i)

for i in reversed(list_a) :
    print(i)

# for문을 두번 실행하였으나 실행 결과는 1번만 출력됨 reversed 함수의 결과값이 제너레이터 이기 때문
5
4
3
2
1

>>>print(list(enumerate(['a', 'b', 'c'])))
[(0, 'a'), (1, 'b'), (2, 'c')]

# enumerate 함수 사용
>>>print(enumerate(list_a))
<enumerate object at 0x000001218C7C30C0>

 

items() 

딕셔너리 변수만 items() 함수를 사용할 수 있으며, for 문을 사용하여 키(key)와 값(value)을 받아올 수 있다.

items() # 딕셔너리는 itesm()함수로 키와 값을 조합하여 반복문 작성

dict = { "키a" : "값a",
	 "키b" : "값b"
        }
        
# items() 함수를 사용하면 key, value 값을 반복자로 사용할 수 있음
# 반복자에 key만 넣으면 key 값만 출력
for key, element in dict.items(): # items() 함수를 사용하면 
	print(f'dictionary[{key}] = {element}')
    
# 실행결과
dictionary[키a] = 값a
dictionary[키b] = 값b

 


내용 출처 - 혼자 공부하는 파이썬

'study > Python' 카테고리의 다른 글

List 와 Array 의 차이  (0) 2022.06.18
Tuple  (0) 2022.06.16
Dictionary - 혼자 공부하는 파이썬 예제 풀이 (개인 공부)  (0) 2022.06.14
Dictionary  (0) 2022.06.13
List - 혼자 공부하는 파이썬 예제 풀이 (개인 공부)  (0) 2022.06.13
댓글