안녕하세요. Harry입니다.
현재 풀이중인 초보자를 위한 파이썬 300제 풀이를 진행하면서 나름대로 파악했던 문제 출제 의도와 풀이를 작성했습니다.
모든 풀이는 직접 Pycharm을 통해 에러없이 출력됨을 확인 후 작성했습니다.
초보자를 위한 파이썬 300제 풀이는 Wikidocs에 무료로 배포된 전자책을 활용했습니다/
[학습목표]
1. 각 문제별 요구하는 역량(출제의도)이 무엇인지 파악할 수 있다.
2. 각 문제별 요구하는 기술 및 기능을 활용하여 문제를 해결할 수 있다.
141 ~ 150
141
다음과 같이 판매가가 저장된 리스트가 있을 때 부가세가 포함된 가격을 for 문을 사용해서 화면에 출력하라. 단 부가세는 10원으로 가정한다.
-요구역량 : 리스트의 요소를 for문으로 출력할 수 있는가?
리스트 = [100, 200, 300]
110
210
310
정답확인리스트 = [100, 200, 300]
for i in 리스트:
print(i+10)
142
for 문을 사용해서 리스트에 저장된 값을 다음과 같이 출력하라.
- 요구역량 : 리스트 요소와 특정 문자열을 동시에 for문을 활용하여 출력할 수 있는가?
리스트 = ["김밥", "라면", "튀김"]
오늘의 메뉴: 김밥
오늘의 메뉴: 라면
오늘의 메뉴: 튀김
정답확인리스트 = ["김밥", "라면", "튀김"]
for i in 리스트:
print("오늘의 메뉴:",i)
143
리스트에 주식 종목이름이 저장돼 있다.
리스트 = ["SK하이닉스", "삼성전자", "LG전자"]
저장된 문자열의 길이를 다음과 같이 출력하라.
- 요구역량 : for문에서 len 함수를 활용하여 각각 요소의 문자열 길이를 출력할 수 있는가?
6
4
4
정답확인리스트 = ["SK하이닉스", "삼성전자", "LG전자"]
for i in 리스트:
print(len(i))
144
리스트에는 동물이름이 문자열로 저장돼 있다.
리스트 = ['dog', 'cat', 'parrot']
동물 이름과 글자수를 다음과 같이 출력하라.
- 요구역량 : for문에서 리스트 별 요소와 Len 함수를 동시에 출력할 수 있는가?
dog 3
cat 3
parrot 6
정답확인리스트 = ['dog', 'cat', 'parrot']
for i in 리스트:
print(i,len(i))
145
리스트에 동물 이름 저장돼 있다.
리스트 = ['dog', 'cat', 'parrot']
for문을 사용해서 동물 이름의 첫 글자만 출력하라.
- 요구역량 : for문에서 인덱싱을 활용하여 요소별 특정 문자를 출력할 수 있는가?
d
c
p
정답확인
리스트 = ['dog', 'cat', 'parrot']
for i in 리스트:
print(i[0])
146
리스트에는 세 개의 숫자가 바인딩돼 있다.
리스트 = [1, 2, 3]
for문을 사용해서 다음과 같이 출력하라.
- 요구역량 : 연산 결과 값이 아닌 연산 과정을 for문을 활용하여 출력할 수 있는가?
이 문제 같은 경우는, 3,6,9를 출력하는 것이 아닌, 그 계산식을 출력하는 것이기 때문에 '3 X' 를 고정 문자열로 작성해두고 리스트 요소가 하나씩 뒤에 배치되도록 구성해야합니다.
3 x 1
3 x 2
3 x 3
정답확인리스트 = [1, 2, 3]
for i in 리스트:
print('3 x', i)
147
리스트에는 세 개의 숫자가 바인딩돼 있다.
리스트 = [1, 2, 3]
for문을 사용해서 다음과 같이 출력하라.
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
정답확인
148
리스트에는 네 개의 문자열이 바인딩돼 있다.
- 요구역량 : 리스트 중 일부 요소만 바인딩하여 출력할 수 있는가?
저는 for문에 if문을 추가하여 "가"인 경우를 제외하는 방법을 택했고, 더 간단한 방법으로는 애초에 바인딩할 때부터 "가"를 포함시키지 않는 방법이 있습니다.
리스트 = ["가", "나", "다", "라"]
for문을 사용해서 다음과 같이 출력하라.
나
다
라
정답확인#for문과 if문 동시 활용
리스트 = ["가", "나", "다", "라"]
for i in 리스트:
if i == "가":
pass
else:
print(i)
#for문만 활용
리스트 = ["가", "나", "다", "라"]
for i in 리스트[1:]:
print(i)
149
리스트에는 네 개의 문자열이 바인딩돼 있다.
리스트 = ["가", "나", "다", "라"]
for문을 사용해서 다음과 같이 출력하라.
가
다
정답확인
150
리스트에는 네 개의 문자열이 바인딩돼 있다.
- 요구역량 : 리스트 슬라이싱을 활용하여 원하는 순서대로 출력할 수 있는가?
맨처음에는 reverse 함수를 활용하고자 했으나, for문 생성 후 i = reverse(i)하니깐 뭔 이상한,,문구가 출력되길래 잘못됨을 직감했습니다.
이후 애초에 리스트 바인딩 시 거꾸로 하고자했으나, 리스트 슬라이싱 특징인 [::-1]을 기억해내지 못했습니다ㅠㅠ
리스트 = ["가", "나", "다", "라"]
for문을 사용해서 다음과 같이 출력하라.
라
다
나
가
정답확인리스트 = ["가", "나", "다", "라"]
for i in 리스트[::-1]:
print(i)
감사합니다.
'Coding Test > 초보자를 위한 파이썬 300제' 카테고리의 다른 글
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(161~170)_12.20 (0) | 2022.12.20 |
---|---|
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(151~160)_12.20 (0) | 2022.12.20 |
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(131~140)_12.20 (0) | 2022.12.20 |
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(121~130)_12.19 (0) | 2022.12.19 |
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(111~120)_12.19 (0) | 2022.12.19 |