지난번 포스팅까지 한 내용에 대해 파이썬 연습문제 를 풀어보는 시간을 가져 보겠습니다.
정답인지 아닌지는 모르지만 일단 결과를 출력하는데 의의를 가지겠습니다
파이썬 연습문제
1. 평균 점수 구하기
문제 : 나파이 님의 과목별 점수입니다. 나파이 님의 평균 점수를 구해 보세요
과목 – 점수
국어 – 90
영어 – 70
수학 – 84
>>> k = 90
>>> e = 70
>>> m = 84
>>> tot = k + e + m
>>> avg = tot /3
>>> print(avg)
81.33333333333333
2. 홀수 짝수 구분하기
문제 : 자연수 11 이 홀수 인지 짝수 인지 구별해 보세요
>>> a = 11
>>> if a % 2 == 0: # 나눗셈 후 나머지를 구하는 연산자 %
... print("짝수")
... else:
... print("홀수")
...
...
홀수
3. 주민등록 번호 나누기
문제 : 나파이 님의 주민등록번호는 891211-1076644 입니다. 나파이 님의 주민등록번호를 연월일(YYMMDD)와 그 뒤 숫자 부분으로 나누어 출력해 보세요
>>> a = '891211-1076644'
>>> y = a[:6]
>>> s = a[7:]
>>> y
'891211'
>>> s
'1076644'
4. 주민등록번호 인덱싱 하기
문제 : 주민등록번호에서 뒷자리의 첫 번째 숫자는 남녀 성별을 구분해줍니다. 주민등록번호에서 성별을 구분해주는 숫자를 출력해 보세요
>>> a = '891211-1076644'
>>> a[7]
'1'
5. 문자열 바꾸기
문제 : ‘a:b:c:d’ 라는 문자열이 있습니다. replace 함수를 사용해서 ‘a@b@c@d’ 로 바꾸어 출력해 보세요
>>> a = 'a:b:c:d'
>>> a.replace(':', '@')
'a@b@c@d'
6. 리스트 역순 으로 정렬하기
문제 : 리스트 [2, 4, 7, 3, 1] 을 [7, 4, 3, 2, 1] 로 만들어 보세요
>>> a = [2, 4, 7, 3, 1]
>>> a.sort()
>>> a
[1, 2, 3, 4, 7]
>>> a.reverse()
>>> a
[7, 4, 3, 2, 1]
7. 리스트를 문자열로 만들기
[‘Python’, ‘is’, ‘so’, ‘hot’] 이라는 리스트를 ‘Python is so hot’ 이라는 문자열로 만들어서 출력해 보세요
>>> a = ['Python', 'is', 'so', 'hot']
>>> b = a[0] + ' ' + a[1] + ' ' + a[2] + ' ' + a[3] # 무식한 방법
>>> b
'Python is so hot'
풀이 :
>>> a = ['Python', 'is', 'so', 'hot']
>>> b = ' '.join(a) # join 함수 사용. 문자열 사이에 ' '를 삽입한다
>>> b
'Python is so hot'
8. 튜플 더하기
튜플 (2, 4, 6) 에 숫자 5를 추가하여 (2, 4, 6, 5) 을 만들어 출력해 보세요
>>> a = (2, 4, 6)
>>> b = (5,)
>>> b
(5,)
>>> c = a + b
>>> c
(2, 4, 6, 5)
9. 딕셔너리의 키
문제 :
>>> a = dict()
>>> a
{}
오류가 발생하는 경우와 설명을 기재해 보세요
- a[‘name’] = ‘computer’
- a[(‘a’,)] = ‘computer’
- a[[1]] = ‘computer’
- a[300] = ‘computer’
3번. a[[1]] = ‘computer’
a[[1]] = 'computer'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'list'
-> a 딕셔너리의 키 값으로 [1] 리스트 를 사용했기 때문.
10. 딕셔너리 pop 사용하기
문제 : 딕셔너리 a 에서 ‘O’ 에 해당되는 값을 추출해 출력해 보세요
>>> a = {'K':95, 'O':84, 'R':70}
>>> a = {'K':95, 'O':84, 'R':70}
>>> a.pop('O')
84
11. 리스트에서 중복 제거하기
문제 : 리스트 a 에서 중복 숫자를 제거해 출력해 보세요
>>> a = [2, 2, 3, 3, 3, 5, 5, 5, 1, 1, 1, 1, 6]
>>> set(a)
{1, 2, 3, 5, 6}
>>> list(set(a))
[1, 2, 3, 5, 6]
12. 파이썬 변수 설명
문제 : 파이썬의 변수는 동일한 값에 여러 개의 변수를 선언 할 수 있습니다. a, b 변수를 선언한 뒤 a의 세번째 요소의 값을 변경하면 b 값은 어떻게 되는지 결과와 이유에 대해 설명해 보세요
>>> a = b = [2, 4, 6]
>>> a[2] = 5
>>> print(b)
>>> a[2] = 5
>>> a
[2, 4, 5]
>>> b
[2, 4, 5]
-> a변수와 b변수는 동일한 메모리 주소를 가지고 있는 동일한 객체이므로 a 의 세번째 요소를 변경하면 b 의 세번째 요소도 같이 변경된다.
- 이 포스팅은 ‘위키독스’ 의 ‘점프 투 파이썬‘ 전자책을 구매하여 독학하기 위한 자료로 작성했습니다.
