<aside>
Reviewing The Python Session & Assignments 3
Reviewing The Python Session & Assignments 4
↑ Click the Page
</aside>
<aside> <img src="notion://custom_emoji/b602c9b4-c478-4904-8b80-95c0ecff1e9f/2020aba3-9a4b-801f-a730-007ab259a990" alt="notion://custom_emoji/b602c9b4-c478-4904-8b80-95c0ecff1e9f/2020aba3-9a4b-801f-a730-007ab259a990" width="40px" />

고비를 넘으면 성장의 증거가 된다는 말이 있다.
오늘은 혜민 튜터님께 개인 과제에 대해 예상치 못할 만큼 따뜻하고 긍정적인 피드백을 받았다.
특히 내가 가장 어려워했던 이중 for문에 대해 “정확히 이해하고 설계했다”는 평가를 받았고,
그 경험이 이후 더 복잡한 문제 해결에 큰 자산이 될 것이라는 말씀에 스스로에 대한 신뢰가 조금 더 생겼다.
이 피드백을 원동력 삼아, 앞으로는 반복되는 코드를 함수로 추상화하거나 list comprehension, map/filter 같은 고급 문법도 과감하게 시도해보려 한다.
오늘은 그 시작으로, 더 어려운 문제에 도전해보았다.
</aside>
<aside> 🧠
퍼포먼스 마케터로서 각 캠페인의 클릭 수와 전환 수를 입력받아, 전환율(Conversion Rate)이 5% 이상인 캠페인만 필터링해서 출력하는 시스템을 만들어야 함.
<aside>
"이미 입력된 캠페인입니다!"라는 메시지를 출력하고 다시 입력받기"잘못된 값입니다. 다시 입력해주세요." 메시지를 출력하고 재입력전환율 = (전환 수 / 클릭 수) * 100<aside>
in, .keys())를 쓰지 않고도 중복 확인 가능하도록 설계def is_duplicate (name, campaign_dict):
for existing_name in campaign_dict:
`if name == existing_name:`
`return True`
return False
</aside>
</aside>
<aside> 💬
<aside>
while True는 무한 반복 구조
→ while을 사용해야 ‘입력 개수가 정해져 있지 않은 조건’ 만족break 조건을 통해 입력을 계속할지 종료할지 사용자에게 물어봄
</aside>while True:
check_y_n = input('계속 입력하시겠습니까?(계속 또는 끝 입력):')
if check_y_n.strip() == '끝':
break
<aside>
campaign_dict
def is_duplicate(name):
return name in campaign_dict.keys()
<aside>
if is_duplicate(campaign_name) 가 True면 printwhile True:
campaign_name = input('캠페인 이름을 입력하세요.: ')
if is_duplicate(campaign_name):
print('이미 입력된 캠페인입니다! ❌')
else:
break
<aside>
while True 반복문으로 유효한 입력이 들어올 때까지 계속 물어봄else에서 다시 메시지 출력
</aside>while True:
clicks = int(input('클릭 수를 입력하세요.: '))
if 0 <= clicks <= 10000:
break
else:
print('잘못된 값입니다. 다시 입력해주세요.')
while True:
conversions = int(input('전환 수를 입력하세요.: '))
if 0 <= conversions <= 100:
break
else:
print('잘못된 값입니다. 다시 입력해주세요.')
<aside>
round(..., 2)로 소수점 둘째 자리까지 깔끔하게 출력
</aside><aside>
</aside>
</aside>
<aside> 💬
</aside>
<aside> 💡
</aside>