혼공파1

ganadara·2022년 11월 15일
1

복습

목록 보기
23/49

리스트 안에 for문 사용하기 - 198p

  • 리스트 내포 list comprehensions

리스트 이름 = [표현식 for 반복자 in 반복할 수 있는 것

"range(0, 20, 2)의 요소를 i라고 할 때 ii로 리스트를 재조합해 주세요"

#리스트를 선언한다
array = [i*i for i in range(0, 29, 2)]

#출력한다
print(array)
#예제1
A = []
for i in range(0, 10):
	A.append(2 * i + 1)
print(A)

->

A = [2 * i + 1 in range(0, 10)]
print(A)

#예제1-2
A = [
	2 * 1 + 1  #표현식
	for i in range(0, 10) #반복문
	if i % 2 == 0 #조건문
]

#예제2
달러 = [155.43, 302.71, 77.46, 131.28]
원화 = [dollar * 1399 for dollar in 달러]
print(원화)

반복가능한 것을 기반으로 새로운 리스트를 만들어내는 문법

조건을 활용한 리스트 내포 - 199p

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

"array의 요소를 fruit이라고 할 때 초콜릿이 아닌 fruit으로 리스트를 재조합해 주세요"

-> 초콜릿을 제외한 요소만 모인 리스트를 만들어 준다.

#리스트를 선언한다
array=["사과", "자두". "초콜릿". "바나나". "체리"]
output = [fruit for fruit in array if fruit != "초콜릿"]

#출력한다
print(output)
>>'사과', '자두', '초콜릿', '바나나', '체리'

iterator 205p

반복문

for 반복자 in 반복할 수 있는 것

반복할 수 있는 것 = iterable 이터러블

이터러블은 내부에 있는 요소들을 차례차례 꺼낼 수 있는 객체를 의미한다.

리스트, 딕셔너리, 문자열 튜플등은 모두 내부에서 요소를 차례차례 꺼낼 수 있으므로 이터러블이다.

이터러블 중에서 next() 함수를 적용해 하나하나 꺼낼 수 있는 요소를 iterator 이터레이터라고 한다.

enumerate 194p

리스트의 요소를 반복할 때 현재 인덱스가 몇 번째인지 확인해야 하는 경우에 사용한다.

print 와 return의 차이

가변 매개변수 214p

앞서 살펴본 함수는 함수를 선언할 떄의 매개변수와 함수를 호출할 때의 매개변수가 같아야 했다.

적어도 안 되고, 많아도 안 된다.

def print_n_times(value, n): #-> 매개변수 2개 지정했는데
	for i in range(n):
print(value)

print_n_times("안녕하세요") #-> 하나만 넣었다

그러나 print()함수는 매개변수를 원하는 만큼 입력할 수 있다.

print() 함수와 같이 매개변수를 원하는 만큼 받을 수 있는 함수를 가변 매개변수라고 부른다.

매개변수가 변할 수 있다.

def 함수 이름(매개변수, 매개변수, … , *가변 매개변수): 문장

  • 제약

가변 매개변수 뒤에는 일반 매개변수가 올 수 없다.

가변 매개변수는 하나만 사용 가능

def print_n_times(n, *values):
	#n번 반복합니다.
	for i in range(n):
	#values는 리스트처럼 활용합니다.
	for value in values:
		print(value)
	#단순한 줄바꿈
	print()

#함수를 호출합니다.
print_n_times(3, "안녕하세요", "즐거운", "파이썬 프로그래밍")

>> 안녕하세요
		즐거운
		파이썬 프로그래밍

기본 매개변수 215p

키워드 매개변수 218p

return 221p

함수 내부에서는 return이라는 키워드 사용할 수 있다.

이 키워드는 함수를 실행했던 위치로 돌아가라는 뜻으로, 함수가 끝나는 위치를 의미한다

profile
DL 공부중

0개의 댓글