안녕하세요. Harry입니다.
현재 풀이중인 초보자를 위한 파이썬 300제 풀이를 진행하면서 나름대로 파악했던 문제 출제 의도와 풀이를 작성했습니다.
모든 풀이는 직접 Pycharm을 통해 에러없이 출력됨을 확인 후 작성했습니다.
초보자를 위한 파이썬 300제 풀이는 Wikidocs에 무료로 배포된 전자책을 활용했습니다/
[학습목표]
1. 각 문제별 요구하는 역량(출제의도)이 무엇인지 파악할 수 있다.
2. 각 문제별 요구하는 기술 및 기능을 활용하여 문제를 해결할 수 있다.
051 ~ 060
051 리스트 생성
2016년 11월 영화 예매 순위 기준 top3는 다음과 같습니다. 영화 제목을 movie_rank 이름의 리스트에 저장해보세요. (순위 정보는 저장하지 않습니다.)
- 요구역량 : 리스트를 생성할 수 있는가?
순위영화
1 | 닥터 스트레인지 |
2 | 스플릿 |
3 | 럭키 |
movie_rank = ['닥터 스트레인지', '스플릿', '럭키']
052 리스트에 원소 추가
051의 movie_rank 리스트에 "배트맨"을 추가하라.
- 요구역량 : append 메서드를 활용하여 특정 요소를 리스트에 추가할 수 있는가
정답확인
movie_rank = ['닥터 스트레인지', '스플릿', '럭키']
movie_rank.append('배트맨')
print(movie_rank)
053
movie_rank 리스트에는 아래와 같이 네 개의 영화 제목이 바인딩되어 있다. "슈퍼맨"을 "닥터 스트레인지"와 "스플릿" 사이에 추가하라.
- 요구역량 : insert메서드를 활용하여 리스트 내 원하는 위치에 요소를 삽입할 수 있는가?
movie_rank = ['닥터 스트레인지', '스플릿', '럭키', '배트맨']
movie_rank = ['닥터 스트레인지', '스플릿', '럭키', '배트맨']
movie_rank.insert(1,'슈퍼맨')
print(movie_rank)
054
movie_rank 리스트에서 '럭키'를 삭제하라.
- 요구역량 : del 메서드를 활용하여 특정 요소를 삭제할 수 있는가?
- del메서드 뒤에 . 이 붙지 않으며, 괄호도 [ ] 대괄호를 활용하며, 안에 인덱스 넘버를 삽입해야한다.
movie_rank = ['닥터 스트레인지', '슈퍼맨', '스플릿', '럭키', '배트맨']
movie_rank = ['닥터 스트레인지', '슈퍼맨', '스플릿', '럭키', '배트맨']
del movie_rank[3]
print(movie_rank)
055
movie_rank 리스트에서 '스플릿' 과 '배트맨'을 를 삭제하라.
- 요구역량 : del 메서드를 활용하여 요소를 원하는 만큼 삭제할 수 있는가?
movie_rank = ['닥터 스트레인지', '슈퍼맨', '스플릿', '배트맨']
삭제 시 인덱스 번호는 그대로지만, 인덱스 번호와 매핑된 요소는 변경됨을 기억해야 합니다.
movie_rank = ['닥터 스트레인지', '슈퍼맨', '스플릿', '배트맨']
del movie_rank[2:]
print(movie_rank)
#아래와 같은 방법도 있다#
movie_rank = ['닥터 스트레인지', '슈퍼맨', '스플릿', '배트맨']
del movie_rank[2]
del movie_rank[2]
print(movie_rank)
056
lang1과 lang2 리스트가 있을 때 lang1과 lang2의 원소를 모두 갖고 있는 langs 리스트를 만들어라.
- 리스트 더하기를 활용하여 두 리스트가 합쳐진 리스트를 출력할 수 있는가?
>> lang1 = ["C", "C++", "JAVA"]
>> lang2 = ["Python", "Go", "C#"]
실행 예:
>> langs
['C', 'C++', 'JAVA', 'Python', 'Go', 'C#']
lang1 = ["C", "C++", "JAVA"]
lang2 = ["Python", "Go", "C#"]
a = lang1+lang2
print(a)
057
다음 리스트에서 최댓값과 최솟값을 출력하라. (힌트: min(), max() 함수 사용)
- 요구역량 : min,max 메서드를 활용하여 리스트 내 최대 최소 값을 출력할 수 있는가?
- 기존 메서드는 '리스트명.메서드명()' 으로 작성했으나, min,max 같은 경우에는 max(리스트명)으로 작성한다.
nums = [1, 2, 3, 4, 5, 6, 7]
실행 예:
max: 7
min: 1
정답확인nums = [1, 2, 3, 4, 5, 6, 7]
print('max: ', max(nums))
print('min: ', min(nums))
058
다음 리스트의 합을 출력하라.
- sum 메서드를 활용하여 리스트 내 요소의 합을 출력할 수 있는가?
- sum 도 min.max와 마찬가지로 메서드명(리스트명)으로 입력해야한다.
nums = [1, 2, 3, 4, 5]
실행 예:
15
nums = [1, 2, 3, 4, 5]
print(sum(nums))
059
다음 리스트에 저장된 데이터의 개수를 화면에 구하하라.
- 요구역량 : len 메서드를 활용하여 리스트 내 개수를 셀 수 있는가?
- len 메서드도 마찬가지로, len(리스트명)으로 작성해야한다.
cook = ["피자", "김밥", "만두", "양념치킨", "족발", "피자", "김치만두", "쫄면", "소시지", "라면", "팥빙수", "김치전"]
정답확인cook = ["피자", "김밥", "만두", "양념치킨", "족발", "피자", "김치만두", "쫄면", "소시지", "라면", "팥빙수", "김치전"]
print(len(cook))
060
다음 리스트의 평균을 출력하라.
- sum,len 메서드를 활용 및 사칙연산을 통해 리스트 합의 평균을 구할 수 있는가?
nums = [1, 2, 3, 4, 5]
실행 예:
3.0
nums = [1, 2, 3, 4, 5]
print(sum(nums)/5)
#sum&len 이용#
nums = [1, 2, 3, 4, 5]
average = sum(nums) / len(nums)
print(average)
감사합니다.
'Coding Test > 초보자를 위한 파이썬 300제' 카테고리의 다른 글
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(071~080)_12.15 (0) | 2022.12.15 |
---|---|
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(061~070)_12.15 (2) | 2022.12.15 |
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(041~050)_12.13 (0) | 2022.12.13 |
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(031~040)_12.13 (0) | 2022.12.13 |
[독학 파이썬] 초보자를 위한 파이썬 300제 풀이(021~030)_12.13 (0) | 2022.12.13 |