# 1. 아래 딕셔너리에서 '가을'에 해당하는 과일을 출력하세요.
q1 = {"봄": "딸기", "여름": "토마토", "가을": "사과"}
for k in q1.keys():
if k=="가을":
print(q1.get(k))
# 2. 아래 딕셔너리에서 '사과'가 포함되었는지 확인하세요.
q2 = {"봄": "딸기", "여름": "토마토", "가을": "사과"}
for i, j in q2.items():
if j =="사과":
print(i, j)
break
else:
print("사과 없음")
# 3. 다음 점수 구간에 맞게 학점을 출력하세요.
# 81 ~ 100 : A학점
# 61 ~ 80 : B학점
# 41 ~ 60 : C학점
# 21 ~ 40 : D학점
# 0 ~ 20 : E학점
score = 65
if score >=81 and score <=100:
print('A')
elif score <= 80:
print('B')
elif score <= 60:
print('C')
elif score <= 40:
print('D')
else:
print('E')
# 4. 다음 세 개의 숫자 중 가장 큰수를 출력하세요.(if문 사용) : 12, 6, 18
a = [12, 6, 18]
for i in a:
if a[0] >= i:
max = a[0]
else:
max = i
else:
print(max)
# 5. 다음 주민등록 번호에서 7자리 숫자를 사용해서 남자, 여자를 판별하세요. (1,3 : 남자, 2,4 : 여자)
num = '980000-2000000'
if num[7] == '1' or num[7] == '3':
print('남자')
elif num[7] == '2' or num[7] == '4':
print('여자')
# 6 ~ 10 반복문 사용(while 또는 for)
# 6. 다음 리스트 중에서 '정' 글자를 제외하고 출력하세요.
q3 = ["갑", "을", "병", "정"]
qq=[]
for k in q3:
if k == '정':
continue
print(k, end=' ')
print()
qq = [x for x in q3 if x!= '정']
print(qq)
# 7. 1부터 100까지 자연수 중 '홀수'만 한 라인으로 출력 하세요.
for i in range(1,101,2):
print(i, end=' ')
print()
ii = [x for x in range(1,101) if x % 2 != 0]
print(ii)
# 8. 아래 리스트 항목 중에서 5글자 이상의 단어만 출력하세요.
q4 = ["nice", "study", "python", "anaconda", "!"]
for i in q4:
if len(i) >= 5:
print(i, end=' ')
print()
# 9. 아래 리스트 항목 중에서 소문자만 출력하세요.
q5 = ["A", "b", "c", "D", "e", "F", "G", "h"]
for i in q5:
if i.islower():
print(i)
# 10. 아래 리스트 항목 중에서 소문자는 대문자로 대문자는 소문자로 출력하세요.
q6 = ["A", "b", "c", "D", "e", "F", "G", "h"]
for i in q6:
if i.islower():
print(i.upper())
else:
print(i.lower())
# 흐름제어 조건문
print(type(True))
print(type(False))
if True:
print("Yes")
if False:
print("No")
else:
print("Yes")
# 관계연산자
a, b = 10, 0
print(a==b)
print(a!=b)
print(a>b)
print(a<b)
print(a>=b)
print(a<=b)
print()
city=""
if city:
print('True')
else:
print('False')
a=100
b=60
c=15
print(a>b and b>c)
print(a>b or c>b)
print(not a>60)
# 우선순위 산술> 관계 > 논리
print(5+10>0 and not 7+3==10)
score1=90
score2='A'
if score1 >= 90 and score2 =='A':
print("합격하셨습니다")
else:
print("불합격하셨습니다")
num = 90
if num >= 90:
print("A")
elif num>=80:
print('B')
elif num>=70:
print('C')
elif num>=60:
print('D')
else:
print('F')
age = 25
height = 160
if age >=20:
if height >= 170:
print("a지망 지원 가능")
elif height >= 160:
print("B지망 지원 가능")
else:
print("지원 불가")
else:
print("20세 이상 지원가능")
# 반복문 for while
v1 = 1
while v1 < 11:
print(v1)
v1 += 1
for v2 in range(10):
print(v2)
for v3 in range(1,11):
print(v3)
# 1~100 합
sum1 = 0
i=1
while i <= 100:
sum1 += i
i += 1
print("1~100 합", sum1)
print("1~100 합", sum(range(1,101)))
print("1~100 짝수의 합", sum(range(0,101,2)))
numbers=[14,3,4,7,188,2,24,51,999,33,1,4,88,3]
for num in numbers:
if num==33:
print("found 33!!")
break
else:
print("not found 33..")
# for - else 구문
for num in numbers:
if num==16:
print("found 16!!")
break # 반복문 하나를 탈
else:
print("not found 16..")
else:
print(" for 문 끝 ")
# continue
lt = ["1",2,2.3,True,complex(4,2)]
for v in lt:
if type(v) is float:
continue # 조건에 맞으면 다음 구문 실행, 안맞으면 조건문으로 다시 돌아감
print("타입: ",type(v))
# 리스트 생성
a=[]
b=list()
c=[1,2,3,4]
d=[10,100,'pen','banana',['red','yellow','blue']]
# 리스트 값, 인덱싱
print(d[3])
print(d[-2])
print(d[0]+d[1])
print(d[4][1])
print(d[0:3])
print(d[4][:2])
print(c+d)
print(c*3)
print(str(c[0])+'=one')
c[0]=77 # 리스트 값 변경
print(c)
c[1:2]=[100,1000,10000] # 리스트 값 삽입
print(c)
c[1]=['a','b','c']
print(c) # 리스트값 리스트로 변경
del c[0]
print(c)
# 리스트 함수
y=[5,2,3,1,4]
y.append(6) # 리스트 마지막에 추가
print(y)
y.sort()
print(y)
y.reverse()
print(y)
y.insert(2,7) # 2번 인덱스에 값을 추가
print(y)
y.remove(2) #2의 값을 찾아 지움 ---> pop, remove, del 삭제함수
print(y)
y.pop() # LIFO 삭제
print(y)
ex=[88,77]
y.extend(ex) # 값으로 추가
print(y)
y.append(ex) # 리스트로 추가
print(y)
# 튜플 : 순서O, 중복O, 수정X, 삭제X
a=()
b=(1,)
c=(1,2,3,4)
d=(10,100,('a','b','c'))
print(c[2])
print(d[2][1]) # 리스트랑 인덱싱하는거 똑같음
z=(5,1,2,4,3)
print(z)
print(4 in z) # 4가 z안에 있니?
print(z.index(5)) # 5의 위치
print(z.count(1)) # 1의 개수
# 딕셔너리 : 순서x 중복x 수정o 삭제o # Key, Value (Json)
a = {'name' : 'Park', 'phone' : '010-0000-0000', 'birth' : 981020}
b = {0 : 'Hello World', 1 : 'Hello Coding'}
c = {'arr' : [1,2,3,4,5]}
print(a['name'])
print(a.get('name'))
print(a.get('address')) # 없는 키 값
print(c.get('arr')[1:3]) # value 값 인덱싱
a['address'] = 'Seoul' # 키 값 추가 --> 순서 상관없음
print(a)
print(a.keys())
print(list(a.keys()))
temp = list(a.keys())
print(temp[1:3])
print(a.values())
print(a.items())
print('name' in a)
# 집합 set : 순서X, 중복X
a=set()
b=set([1,2,3,4])
c=set([5,6,7,7,8])
print(c)
t = tuple(b) # 형 변환
print(t)
li=list(b)
print(li) # -->list 함수를 사용할 수 있게됨
# 집합 연산
s1=set([1,2,3,4,5])
s2=set([4,5,6,7,8,9])
print(s1 & s2) # 교집합
print(s1.intersection(s2))
print(s1|s2) # 합집합
print(s1.union(s2))
print(s1-s2) # 차집합
print(s1.difference(s2))
s3=set([7,8,9])
s3.add(18) # 순서 상관 없이 값이 추가된다
print(s3)
s3.remove(7) # 7 값을 찾아 지워준다
print(s3)
import math
print(abs(-7)) # 절댓값
x,y=divmod(10,3) # 몫 x 나머지 y
print(x, '...', y)
print(math.ceil(5.1)) # 5.1보다 크면서 가장 작은 정수반환
print(math.floor(3.874)) # 3.784보다 작으면서 가장 가까운 정수