본문 바로가기
PYTHON/PYTHON 학습

파이썬 요약 2

by 쿙이콩 2025. 5. 16.
728x90
반응형

 

조건문 IF( ): --- elif( ): , else:

1. 개념 ( : 과 TAB중요)

중요 인수가 들어갔으면, 인수 들어간게 끝났다는 것을 컴에게 알려줘야 함.

그래서 : 을 씀

아울러 함수에는 TAB의 역할도 중요

a = 30
b = 75

if(a == b):       # : 필수
	print("a가 b --> yes")

elif(a == 15):    # : 필수
	print("a는 15 --> yes")

elif(b == 75):    # : 필수
	print("b는 75 --> yes")
    
else:             # : 필수 
	print("no")   

#결과 : b는 75 --> yes

 

2. 대화형 인풋 version = input( )

변수 = input() 을 하면, 내가 입력하는 내용에 대해서 IF조건문을 판단

아래는 예시

print("파이썬의 버전은?")
version = input()
# 출력: "파이썬은 버전은?"이라고 떠서,
# 그 밑에 내가 답을 3.22라고 입력한다면, 그 답이 version이라는 변수에 들어감
# 여기서부터 if 활용성이 높아짐

if (version == 3.9):   # version에는 내가 아까 입력한 3.22가 담겨 있음
	print('정답이야~')
else:
	print('no')
# 출력: no

 

형 변환의 중요성

근데 실제로 3.9를 넣어도, "no"라고 답변이 나타남.

그 이유는 input의 3.9가 어떤 형태인지 알려주지 않았기 때문!

따라서 float()를 추가해주고 3.9를 입력하면, '정답이야~' 뜸.

print("파이썬의 버전은?")
version = float(input())

if version == 3.9:
	print('정답이야~')
elif version > 3.2 and version < 4.0:
	print('비슷한 범위야~')
else:
	print('no')

 

AND, OR, NOT

if 15 == 15 and 15 == 15:
	print('yes')
else:
	print('no')
# 둘 다 충족되니까 yes

if 15 == 15 or 15 == 1:
	print('yes')
else:
	print('no')
# 둘 중 하나 충족했으므로 yes

if not 15 == 15:     # if not true인거니까, false가 됨
	print('yes')
else:
	print('no')
# no

(예시) 점수 평균 구하기 1

a = int(input('a 점수 :'))
b = int(input('b 점수 :'))
c = int(input('c 점수 :'))

all = (a + b + c)/3

if all >= 92:
    print('A+ 등급')
elif all >= 82:
    print('A 등급')
elif all >= 50:
    print('C 등급')
else:
    print('일반 등급')
    
#출력: a, b, c를 직접 입력하게 하고, 그 평균에 대한 등급을 알려줌

(예시) 점수 평균 구하기 2

if > if/else

elif > if/else

else 

a = int(input('a 점수 :'))
b = int(input('b 점수 :'))
c = int(input('c 점수 :'))

all = (a + b + c)/3

if all >= 90:
    if all >= 98:
        print('A++')
    else:
        print('A')
        
elif all >= 70:
    if all >= 78:
        print('B')
    else:
        print('B-')
elif all >= 60:
    if all > 68:
        print('C')
    else:
        print('C-')
else:
    print('일반 등급')

 

in

예시를 살펴보면,

i에 pasta라는 문자형 5개를 넣음. if '값' in i에서 in은 =과 같은데,

i값을 하나하나 다 넣어서 시험해보는거임

i = 'pasta'

if 'A' in i:
	print('a포함')
else:
	print('미포함')
# 출력: A포함

WHILE

아래 예시에서,

1. aa, bb = int(input('숫자: ')), 0 이라하면

쉼표를 기준으로 앞부분은 aa이고 뒷부분은 bb,

즉 int(input('숫자: ') 는 aa이고, bb는 0 인 것이다.

2. while aa > bb:

    bb += 1

    print(bb) 는

input에 대해서 숫자:를 입력하라고 뜰 때 예컨대 내가 5를 입력했다면,

int(input('숫자: ') = 5 = aa가 되는 것. (1에 의해_

따라서 bb는 현재 0 이므로, (1에 의해)

5 > bb가 될 때까지 bb += 1을 해준다.즉,

0 넣어서 1 출력,

1 넣어서 2 출력,

2 넣어서 3 출력,

3 넣어서 4 출력,

4 넣어서 5 출력. 언제까지? aa > bb가 참인 모든 것을 출력.

그리고 충족이 되면,

print('end')로 끝나는 것이다.

aa, bb = int(input('숫자: ')), 0
# a, b = a, b 쉼표를 기준으로 a=a, b=b임

while aa > bb:
    bb += 1
    print(bb)

print('end')

# 숫자를 5로 입력하면, 
# 출력:
1
2
3
4
5
end
pasta=0
while pasta<3:
    pasta = pasta+1
    #pasta += 1
    print("와우", pasta)
#출력
와우 1
와우 2
와우 3

 

while True

while True:
	number = int(input())
    
    if number == 99:
    	break
# 99가 될 때까지 멈추지 않음. 99가 됐을 때 종료된다.
tree = 3
while True:
	Water = int(input("물 100L: "))
    if Water == 100:
    	print("꽃을 피우다.")
    elif Water > 100:
    	print("물 %d 주고 꽃을 피우다." % (Water -100))
        tree = tree -1
    else:
    	print("적은량은 도움이 안 됨 - 물주기 취소")
        print("물주기 잔여 %d회." % tree)
    if not tree:
    	print("꽃이 만발 물주기 끝")
        break

 

for

1. for x in range(0, y, 2)

아래 예시에서,

for bb in range(0, aa, 2):

     print(bb)

print('end')는 

(첫째자리) 0부터 시작해서,

(반복을 몇 번?) 내가 원하는 입력값(여기서는 aa 즉 5)까지,

(단위, 반복횟수 도달할 때까지 몇 씩 증가)2씩 프린트하라는 뜻.

 

+) range(3) = [0,1,2,3] = 0부터 3까지

aa = int(input('숫자: '))

for bb in range(0, aa, 2):
    print(bb)

print('end')

# 출력
숫자 : 5 (input에 의해 내가 입력하는 값)
0
2
4

 

aa값이 바뀔때마다 입력해서 수정하면 되니까, 첫번째나 두번째나 결과는 같지만, 두번째가 활용도 높음!

-- 1번
for o in range(0,11): # 0에서 11까지
	print(o)

-- 2번
aa = 11
for o in range(0, aa):
	print(o)

#둘 다 아래와 같이 결과 같음
0
1
2
3
4
5
6
7
8
9
10

예시1. 무한루프

use = ""
cal = "18"
while use != cal:
	use = input("15+3=?")
print("정답")

#출력
15+3=? 입력:17
15+3=? 입력:18일때까지 질문이 계속 나옴

예시2. break

range만큼 해보고 끝냄

for aa in range(3):
    print(aa)
    bb = input("무한 루프중..(종료:y ):")
    if bb == "y":
        break
print("종료됨")

# break가 있음으로써, range(3) 즉 3번만 해보고 그 3번 안에 "y"를 입력 안 해도 그냥 종료 됨

예시3. continue

한 번에 끝내버림

aa = input("3이내: ")

for a in range(3):
    if str(a) in aa:
        continue
#else:
print(a)

2. 구조

while 조건:

      명령

else:

명령

print("종료")

aa =1
even, odd = 0, 0

while aa <= 9000:
	if aa%2 == 0: #짝수면
    	even = even + aa
    else: #홀수면
    	odd = odd + aa
    aa += 1   # aa = aa + 1임
print("홀", odd, "짝", even)

#결과 홀 20250000 찍 20254500  #9000까지의 모든 홀수, 짝수 합친 것

리스트 list

리스트:  [ 대 열 ] 대괄호로 대열을 만들어 준 것

aa = ['p', 'a', 's', 't', 'a']
for b in range(len(aa)):
    print(b, "-->", aa[b])   # 중요, [b]로 써야 함

# 출력
0 --> p
1 --> a
2 --> s
3 --> t
4 --> a

 

 

 

 

 

 

 

 


 

 

출처 및 참고: 인강덕후 파이썬[왕초보] 기초 강의2

 

 

728x90
반응형