본문 바로가기

프로그래밍/Python

[요약] 파이썬(Python) - 실용코드 - 반복/제어문

[요약] 파이썬(Python) - 실용코드 - 반복/제어문



# 파이썬 흐름제어(제어문) 실용 코드 샘플

# 1. 딕셔너리에서 '가을'에 해당하는 과일을 출력
q1 =  {"봄": "딸기", "여름": "토마토", "가을": "사과"}

# 방법1
for k1, v1 in q1.items():
    if k1=='가을':
        print(v1)
        break
# 방법2
for k in q1.keys():
    if k=="가을":
        print(q1[k])


# 2. 아래 딕셔너리에서 '사과'가 포함되었는지 확인하세요.
q2 =  {"봄": "딸기", "여름": "토마토", "가을": "사과"}
for k2, v2 in q2.items() :
    if v2=="사과":
        print('"사과"가 포함되어 있음')
        break
else:
    print('"사과"가 포함되어 있지 않음')

# 3. 다음 점수 구간에 맞게 학점을 출력하세요.
# 81 ~ 100 : A학점
# 61 ~ 80 :  B학점
# 41 ~ 60 :  C학점
# 21 ~ 40 :  D학점
#  0 ~ 20 :  E학점

v3 = 55
if v3<=20:
    print('학점 E')
elif v3<=40:
    print('학점 D')
elif v3<=60:
    print('학점 C')
elif v3<=80:
    print('학점 B')
else:
    print('학점 A')

# 4. 세 개의 숫자 중 가장 큰수를 출력하세요.(if문 사용) : 12, 6, 18
a = 12
b = 6
c = 18
best = 0

# 또는 다음과 같이 선언가능
# a, b, c, best = 12, 6, 18, 0

if a>b:
    best = a
else:
    best = b

if best<c:
    best = c

print('12, 6, 18중 가장큰수는 ', best)


# 5. 주민등록 번호에서 7자리 숫자를 사용해서 남자, 여자를 판별. (1,3 : 남자, 2,4 : 여자)
v5 = "691110-2140116"
if v5[7] in ['1','3']:
    print('남자')
else:
    print('여자')

# 또는
if int(v5[7]) %2 == 1 :
    print('남자')
else:
    print('여자')


# 6. 리스트 중에서 '정' 글자를 제외하고 출력.
q3 = ["갑", "을", "병", "정"]
for v6 in q3:
    if v6 != "정":
        print(v6, end=" ")
print()


# 7. 1부터 100까지 자연수 중 '홀수'만 한 라인으로 출력.

v7 = ""
for c in range(1,101):
    if c % 2 > 0:
        v7 = v7 + ',' + str(c)
print(v7)

# 8. 리스트 항목 중에서 5글자 이상의 단어만 출력.
q4 = ["nice", "study", "python", "anaconda", "!"]
for v8 in q4:
    if len(v8)>=5:
        print(v8, end=' ')
print()

# 9. 리스트 항목 중에서 소문자만 출력
q5 = ["A", "b", "c", "D", "e", "F", "G", "h"]
for v9 in q5:
    if ord(v9) in range(ord('a'),ord('z')):
        print(v9, end=' ')
print()

# 10. 리스트 항목 중에서 소문자는 대문자로 대문자는 소문자로 출력.
q6 = ["A", "b", "c", "D", "e", "F", "G", "h"]
for v10 in q6:
    if ord(v10) in range(ord('a'),ord('z')):
        print(v10.upper(), end=" ")
    else:
        print(v10.lower(), end=" ")
print()

    
# 리스트 컴프리핸션(list comprehension)

# 일반적인 방법
numbers = []
for n in range(1,101):
    numbers.append(n)
print('numbers=', numbers)

# 리스트컴프리핸션
numbers2 = [x for x in range(1,101)]
print('numbers2=', numbers2)

numbers3 = [x for x in range(1,101) if x > 50]
print('numbers3=', numbers3)