안녕하세요. Harry입니다.
현재 풀이중인 초보자를 위한 파이썬 300제 풀이를 진행하면서 나름대로 파악했던 문제 출제 의도와 풀이를 작성했습니다.
모든 풀이는 직접 Pycharm을 통해 에러없이 출력됨을 확인 후 작성했습니다.
초보자를 위한 파이썬 300제 풀이는 Wikidocs에 무료로 배포된 전자책을 활용했습니다/
[학습목표]
1. 각 문제별 요구하는 역량(출제의도)이 무엇인지 파악할 수 있다.
2. 각 문제별 요구하는 기술 및 기능을 활용하여 문제를 해결할 수 있다.
061 ~ 070
061
price 변수에는 날짜와 종가 정보가 저장돼 있다. 날짜 정보를 제외하고 가격 정보만을 출력하라. (힌트 : 슬라이싱)
- 요구역량 : 리스트 슬라이싱을 활용하여 원하는 부분만 출력할 수 있는가?
price = ['20180728', 100, 130, 140, 150, 160, 170]
출력 예시:
[100, 130, 140, 150, 160, 170]
price = ['20180728', 100, 130, 140, 150, 160, 170]
print(price[1:])
062
슬라이싱을 사용해서 홀수만 출력하라.
- 요구역량 : 리스트 슬라이싱을 이용하여 원하는 간격의 요소만 출력할 수 있는가?
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
실행 예:
[1, 3, 5, 7, 9]
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(nums[::2])
063
슬라이싱을 사용해서 짝수만 출력하라.
- 요구역량 : 리스트 슬라이싱을 이용하여 원하는 간격의 요소만 출력할 수 있는가?
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
실행 예:
[2, 4, 6, 8, 10]
정답확인nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(nums[1::2])
064
슬라이싱을 사용해서 리스트의 숫자를 역 방향으로 출력하라.
- 요구역량 : 슬라이싱을 이용하여 리스트 순서를 역방향으로 출력할 수 있는가?
nums = [1, 2, 3, 4, 5]
실행 예:
[5, 4, 3, 2, 1]
정답확인#슬라이싱을 이용한 경우#
nums = [1, 2, 3, 4, 5]
print(nums[::-1])
#reverse 메서드를 이용한 경우#
nums = [1, 2, 3, 4, 5]
nums.reverse()
print(nums)
065
interest 리스트에는 아래의 데이터가 바인딩되어 있다.
- 요구역량 : 리스트 내 특정 요소만 출력할 수 있는가?
interest = ['삼성전자', 'LG전자', 'Naver']
interest 리스트를 사용하여 아래와 같이 화면에 출력하라.
출력 예시:
삼성전자 Naver
interest = ['삼성전자', 'LG전자', 'Naver']
print(interest[::2])
#답지#
interest = ['삼성전자', 'LG전자', 'Naver']
print(interest[0], interest[2])
066 join 메서드
interest 리스트에는 아래의 데이터가 바인딩되어 있다.
interest = ['삼성전자', 'LG전자', 'Naver', 'SK하이닉스', '미래에셋대우']
interest 리스트를 사용하여 아래와 같이 화면에 출력하라.
- 요구역량 : join 메서드를 활용하여 리스트 내 문자들을 사용자 기준에 따라 합쳐서 출력할 수 있는가?
출력 예시:
삼성전자 LG전자 Naver SK하이닉스 미래에셋대우
interest = ['삼성전자', 'LG전자', 'Naver', 'SK하이닉스', '미래에셋대우']
print(" ".join(interest))
067 join 메서드
interest 리스트에는 아래의 데이터가 바인딩되어 있다.
- 요구역량 : join 메서드를 활용하여 리스트 내 문자들을 사용자 기준에 따라 합쳐서 출력할 수 있는가?
interest = ['삼성전자', 'LG전자', 'Naver', 'SK하이닉스', '미래에셋대우']
interest 리스트를 사용하여 아래와 같이 화면에 출력하라.
출력 예시:
삼성전자/LG전자/Naver/SK하이닉스/미래에셋대우
interest = ['삼성전자', 'LG전자', 'Naver', 'SK하이닉스', '미래에셋대우']
print("/".join(interest))
068 join 메서드
interest 리스트에는 아래의 데이터가 바인딩되어 있다.
interest = ['삼성전자', 'LG전자', 'Naver', 'SK하이닉스', '미래에셋대우']
join() 메서드를 사용해서 interest 리스트를 아래와 같이 화면에 출력하라.
- 요구역량 : join 메서드 중 이스케이프 코드를 활용하여 리스트 내 문자들을 사용자 기준에 따라 합쳐서 출력할 수 있는가?
출력 예시:
삼성전자
LG전자
Naver
SK하이닉스
미래에셋대우
interest = ['삼성전자', 'LG전자', 'Naver', 'SK하이닉스', '미래에셋대우']
print("\n".join(interest))
069 문자열 split 메서드
회사 이름이 슬래시 ('/')로 구분되어 하나의 문자열로 저장되어 있다.
- 요구역량 : 문자열을 리스트로 변경할 수 있는 split 메서드를 활용할 수 있는가?
string = "삼성전자/LG전자/Naver"
이를 interest 이름의 리스트로 분리 저장하라.
실행 예시
>> print(interest)
['삼성전자', 'LG전자', 'Naver']
string = "삼성전자/LG전자/Naver"
interset = string.split("/")
print(interset)
070 리스트 정렬
리스트에 있는 값을 오름차순으로 정렬하세요.
- 요구역량 :sort 또는 sorted 메서드를 활용하여 리스트 내 요소를 정렬할 수 있는가?
- sort를 활용하면 그 자체로 리턴값이 없지만, sorted는 리턴 값이 있다.
data = [2, 4, 3, 1, 5, 10, 9]
정답확인data = [2, 4, 3, 1, 5, 10, 9]
data.sort()
print(data)
#sorted 활용
data = [2, 4, 3, 1, 5, 10, 9]
data2 = sorted(data)
print(data2)
감사합니다.
'Coding Test > 초보자를 위한 파이썬 300제' 카테고리의 다른 글
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(081~090)_12.15 (0) | 2022.12.15 |
---|---|
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(071~080)_12.15 (0) | 2022.12.15 |
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(051~060)_12.15 (0) | 2022.12.15 |
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(041~050)_12.13 (0) | 2022.12.13 |
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(031~040)_12.13 (0) | 2022.12.13 |