3일차-2 Python 프로그래밍 & 라이브러리

정지원·2024년 2월 22일
0

에이블 스쿨 복습

목록 보기
5/51
post-thumbnail

3. 조건문과 반복문

1.Bool 연산자

  • bool 연산자
    • 주어진 조건을 평가하여 참 또는 거짓의 결과를 반환하는 연산자
    • 결과 : True / False
  • 비교 연산자(조건문)
    • == 같은가?
    • != 같지 않은가?
  • 논리 연산자
    • and : 양쪽이 둘 다 참일 때만 참.
    • or : 둘 중 하나만 참 이어도 참.
    • not : 논리 값의 반대.
# 'a' 와 'A' 가 같은가?
print(('a' == 'A'))

# 'a' 와 'A' 가 같지 않은가?
print(('a' != 'A'))

>
False

>
True
# `a' 와 'A' 가 같거나, 10과 10.0 이 같은지 비교
print(('a' == 'A') or (10 == 10.0))

>
True


#20과 20.0이 같고, '123'이 '일이삼'과 같은지 비교
print((20 == 20.0) and ('123' == '일이삼'))

>
False

2.조건제어(if문)

(1) if

if 조건문1 :
____코드1

  • 조건문1이 True이면,
  • 코드1 실행(아니면, 그냥 넘어 감.)

(2) if ~ else

if 조건문1 :
__코드1
else :
__
코드2

  • 조건문1이 True이면,
  • 코드1 실행,
  • 아니면, 코드2 실행

(3) if ~ elif ~ else

if 조건문1 :
__코드1
elif 조건문2 :
__
코드2
else :
____코드3

  • 조건문1이 True이면,
  • 코드1 실행
  • 아니면, 또 조건문2가 True이면,
  • 코드2 실행
  • 아니면, 코드3 실행

[문1] math, korean, history에 임의의 점수를 각각 저장하고, 다음의 조건에 맞게 출력하시오.

  • 각 점수중 하나라도 70 미만이거나, 평균이 75 이하이면 'fail'
  • 아니면, 'pass'
math, korean, history = 100, 60, 80
if (math < 70) or 
	(history < 70) or 
	(korean < 70) or 
    ((math + korean + history) / 3 <= 75):
	print('fail')
else:
    print('pass')

>
fail

3.반복제어

(1) for loop

  • 문법

    for 변수 in range() :
    ____코드

  • 실행 절차

    • ① 변수 in range() : 데이터 목록(여기서는 range()의 결과)으로 부터 값을 하나씩 꺼내서 변수 i에 담아
    • ② 코드를 실행하고
    • ③ ①~②반복 (데이터 목록의 다음 값을 변수에 담고 코드실행)
  • 반복문 종료 조건

    • 데이터 목록 첫번째 값부터, 마지막까지 반복한 후에 종료
    • 반복문 안에서 break 구문을 만나면 종료

1부터 100까지 자연수를 모두 더하기

total = 0
for i in range(1, 101) :
    total += i
print(total)

>5050

(2) while loop

  • 문법

    while 조건문 :
    __코드
    __
    조건변경문

  • 실행 절차

    • ① 조건문이 참이면,
    • ② 코드를 실행하고
    • ③ 조건을 변경한 후,
    • ④ ① ~ ③ 반복 실행
  • 반복문 종료 조건

    • ① 조건문이 참이 아니면 반복문 종료
    • 반복문 안에서 break 구문을 만나면 종료

0에서 5까지 1씩 증가시켜가면서 값을 출력

i = 0
while i <= 5 :
    print(i)
i += 1

>
0
1
2
3
4
5

1부터 100까지 홀수만 더하기

odd_total = 1
i = 1
while i <= 100:

	if i % 2 == 1:
        odd_total += i
        
    i += 1
print(odd_total)

4. 함수

1.input(입력 매개변수)

def hello_world() :
    print('Hello, Python World~!')

hello_world()

>
Hello, Python World~!

여러 개의 숫자를 입력받아 평균을 계산하여 출력(print)하시오.

num = ''
def avg(*nums):
    num = sum(nums) / len(nums)
    return num    
avg(1, 2, 3, 4, 5)
>
3.0

2.output

  • 함수의 결과를 출력하는 방법 두가지
    • print : 화면에 출력만 수행
    • return : 화면 출력 + 함수 외부로 결과 반환(진짜 output)
      • 결과를 별도 변수에 저장하면, 화면 출력은 생략됨
      • 함수는 return을 만나면 종료됨

(1) print vs. return

def numbers1(*nums) :
    print(nums)
 
def numbers2(*nums) :
    return(nums)
        
#함수 출력 : print
	a1 = numbers1(1, 2, 3)
	print(a1)

# 함수 출력 : return
	a2 = numbers2(1, 2, 3)
	print(a2)

>
(1, 2, 3)
None

>
(1, 2, 3)

여러 개의 숫자를 입력받아 합계와 평균을 계산하여 출력(return)하시오.

def cal(*nums):
	summ = sum(nums)
    avg = summ / len(nums)    
    return summ, avg    

[참고] 한기영 강사님 수업자료

profile
뒤늦게 프로그래밍을 시작한 응애

0개의 댓글