▶ 딕셔너리 사용시 'key' 가 없는 경우에 대한 처리
lux = {'health' : 490, 'mana' : 334, 'melee' : 550, 'armor' : 18.72}
print("키 유무 여부를 확인 :")
if 'health' in lux:
print(lux['health']) # 키의 값이 없으면 에러 발생
if lux.get('health') != None: # 키의 값이 없을 경우 = None
print(lux['health'])
# print("key를 사용하여 value에 접근하는 경우:")
# print(lux['health1']) # 키의 값이 없으면 에러 발생
print("get 메소드를 사용하는 경우:")
print(lux.get('health1')) # 키의 값이 없을 경우 : None
조건문
▶ if 조건문 : 조건식을 지정하고 : 을 붙이고 들여쓰기(Tap)를 한 후 실행 할 코드가 온다.
pass : 아무일도 하지 않고 그냥 넘어간다는 뜻, pass만 넣고 나중에 할 일은 주석으로 남겨놓는 방식임.
num = int(input(''))
if num ==7:
print('행운')
num = int(input('값 입력 :'))
if num ==10:
print(f'{num}은 10과 같습니다.')
if num >10:
print(f'{num}은 10보다 큽니다.')
if num <10:
print(f'{num}은 10보다 작습니다.')
▶ 중첩 if 문 : if문 안에 if문 사용
x = int(input(''))
if x >= 10:
print('10이상입니다.')
if x==15:
print('15입니다.')
if x==20:
print('20입니다.')
값 비교시 != 객체 비교시 is , is not |
▶ else를 사용하여 두 방향으로 분기하기
조건식이 만족할때와 만족하지 않을때를 각각 적을 수 있다.
num = int(input('값 입력 :'))
if num ==10:
print('10입니다')
else:
print('10이 아닙니다')
▶ None = Null => False
if True:
print('참입니다.')
else:
print('거짓이니다')
if None:
print('참')
else:
print('거짓')
▶ 2진수, 10진수, 16진수, 실수와 관계없이 0이면 거짓, 0이 아닌 수는 모두 참임
if 0:
print('참',0)
else:
print('거짓',0)
if 1:
print('참',1)
else:
print('거짓',1)
if 0x1f:
print('참',0x1f)
else:
print('거짓',0x1f)
if 0b1000:
print('참',0b1000)
else:
print('거짓',0b1000)
if 13.5:
print('참',13.5)
else:
print('거짓',13.5)
▶ 문자열은 참, 빈문자열은 거짓
if 'Hello':
print('참')
else:
print('거짓')
if '':
print('참')
else:
print('거짓')
▶ 조건식 여러개 지정하기
written_test = 75
coding_test = True
if written_test >=80 & coding_test==True:
print('합격')
else:
print('불합격')
▶ 코드 작성 5단계
1. 문제이해
2. 변수
3. 구조
4. 작성
5. 검증
▶ 연습문제
각 과목의 점수가 0~100사이가 아니라면 '잘못된 점수' 출력, 아니라면 평균을 구하고 평균이 80점 이상이면 '합격', 아니면 '불합격' 출력 |
방법 1
kor, eng, mat, sci = map(int, input("국어, 영어, 수학, 과학 점수를 띄어쓰기로 입력하세요 : ").split())
avg = (kor + eng + mat + sci) / 4
if 0<=kor<=100 and 0<=eng<=100 and 0<=mat<=100 and 0<=sci<=100:
if avg >=80:
print('합격')
else:a
print('불합격')
else:
print('잘못된 점수')
방법 2
scoreList = list(map(int,input().split()))
sum = 0
for i in range(len(scoreList)):
if (0 > scoreList[i]) | (100 < scoreList[i]):
print('잘못된 점수')
break
else :
sum += scoreList[i]
avg = sum / (len(scoreList))
if avg >= 80:
print('합격')
else :
print('불합격')
▶ if elif else 를 사용하여 여러 조건 사용하기
참, 거짓으로만 프로그램을 작성하기 어려울 때 사용
if-else 의 else에 다시 if-else 를 사용하는 것과 동일하다
if-elif-else 구문은 if-elif- elif- elif- elif- ...-else 로 사용한다.
if-elif-else 구문은 예외상황 처리가 가능하다.
x = int(input())
if 11 <= x <= 20:
print("11~20")
elif 21 <= x <=30:
print("21~30")
else:
print("아무것도 해당되지 않음")
▶ - 음료수 자판기 만들기 1 -
방법 1
sel = int(input("1,2,3 버튼을 누르세요 : "))
if sel == 1:
print("콜라")
elif sel == 2:
print("사이다")
elif sel == 3:
print("환타")
else:
print("제공하지 않는 메뉴")
방법 2
menu = {1:"콜라", 2:"사이다", 3:'환타'}
sel = int(input("1,2,3 버튼을 누르세요 : "))
if sel == 1:
print(menu[sel])
elif sel == 2:
print(menu[sel])
elif sel == 3:
print(menu[sel])
else:
print("제공하지 않는 메뉴")
▶ - 음료수 자판기 만들기 2-
money = int(input("800원 이상 입력하세요 : "))
menu = {1:"콜라", 2:"사이다", 3:'환타'}
price = {"콜라":600, "사이다":700, '환타':800}
sel = int(input("1,2,3 버튼을 누르세요 : "))
if sel == 1:
print(money - price[menu[sel]])
elif sel == 2:
print(money - price[menu[sel]])
elif sel == 3:
print(money - price[menu[sel]])
else:
print("제공하지 않는 메뉴")
else는 예외처리 할 대 사용하는 것이 좋음
▶ 사분면 좌표 판단
xy = list(map(int, input("x,y의 형태로 좌표를 입력 하세요.").split(',')))
if 0<xy[0] and 0<xy[1]:
print("1사분면")
elif 0<xy[0] and 0<xy[1]:
print("2사분면")
elif 0<xy[0] and 0<xy[1]:
print("3사분면")
elif 0<xy[0] and 0<xy[1]:
print("4사분면")
else:
print("사분면에 존재하지 않는 값입니다.")
▶ 사각형 안의 한 점 판단
xy = list(map(int, input("x,y의 형태로 좌표를 입력 하세요.").split(',')))
if 50<=xy[0]<=100 and 40<=xy[1]<=80:
print("사각형 안에 있습니다")
else:
print("사각형 안에 없습니다.")
▶ 범위에 해당하는 값 출력
userInput = int(input("입력값: "))
ans = userInput-20
output = 0
if ans < 0:
output = 0
elif ans >255:
output = 255
else:
output = ans
print(output)
▶ 정각인지 아닌지 판별
userInput = list(input("시간을 입력하시오 ").split(":"))
print("현재시간:",userInput[0],":",userInput[1])
if userInput[1]=='00':
print('정각입니다.')
else:
print('정각이 아닙니다.')
data = input()
if data[3:] =='00':
print("정각")
else:
print("정각 아님")
▶주민번호 뒷자리 성별 구분
jumin = input("주민번호 뒷자리: ")
if len(jumin) ==7:
if jumin[0]=="1" or jumin[0]=="3":
sex = "남자"
print(sex)
elif jumin[0]=="2" or jumin[0]=="4":
sex = "여자"
print(sex)
else:
print("잘못된 입력입니다.")
else:
print("자리수가 틀립니다.")
▶음료수 자판기 코드
money = int(input("금액을 입력하세요: "))
menu = {1:"사이다", 2:"콜라", 3:"오렌지쥬스"}
price = {"사이다":700, "콜라":600, "오렌지쥬스":800}
sel = int(input("음료를 선택하세요: "))
if 10000>=money >= price[menu[sel]]:
balance = money - price[menu[sel]]
print("잔액은",balance,"입니다.")
elif money < price[menu[sel]]:
print("금액이 부족합니다")
else:
print("금액 초과, 최대금액 1만원.")
반복문
▶ for, range
for i in range(7):
print("hello, world!",i+5)
for i in range(5,12):
print("hello, world!",i+5)
▶ revrsed(range())
num = int(input())
for i in reversed(range(num)):
print("Hello World!",i)
▶ 숫자를 입려받아 반복문
snum = int(input("시작 숫자"))
enum = int(input("끝 숫자"))
jump= int(input("간격"))
for i in range(snum,enum+1,jump):
print(i)
for +range도 가능하고
▶ for +시퀀스 객체도 가능하다
# 리스트
a = [10,20,30,40,50]
for i in a:
print(i)
# 튜플
fruits = ("apple","orange", 'grape')
for i in fruits:
print(i)
# 문자열
for letter in 'python':
print(letter)
▶ 매번 값을 입력받아 평균 구하기
sum=0.
for i in range(10):
print(f"{i+1}번째의 돌")
weight = float(input(" 무게(g):"))
sum+=weight
avg = sum/10
print("평균 :", avg,"g")
▶ 한번에 여러개의 값을 입력받아 평균 구하기
sum=0
weight = list(map(float,input("무게(g):").split()))
for i in range(10):
print(f"{i+1}번째의 돌", end="\n")
print("무게(g):",weight[i])
sum+=weight[i]
avg = sum/len(weight)
print("평균 :", avg,"g")
sum=0
st = int(input("학생의 수 : "))
for i in range(st):
print(f"{i+1}번 학생의 점수 : ")
score = int(input())
sum+=score
avg = sum/st
print("평균 : ", avg,"점")
'• 패스트캠퍼스 데이터분석 부트캠프 12기' 카테고리의 다른 글
3. 데이터 분석을 위한 핵심 Tool Python(김상모 강사님)_07 (0) | 2024.01.09 |
---|---|
3. 데이터 분석을 위한 핵심 Tool Python(김상모 강사님)_06 (0) | 2024.01.09 |
3. 데이터 분석을 위한 핵심 Tool Python(김상모 강사님)_04 (0) | 2024.01.05 |
3. 데이터 분석을 위한 핵심 Tool Python(김상모 강사님)_03 (1) | 2024.01.05 |
3. 데이터 분석을 위한 핵심 Tool Python(김상모 강사님)_02 (1) | 2024.01.05 |