이 챕터의 내용은 딱히 정리할 게 없으므로, 연습문제만 풀이하겠습니다.
1. 다음과 같은 코드 작성 시, 빈 칸에 들어갈 수 없는 코드를 고르시오
- 입력
a=20
b='10'
print(빈칸)
- 출력
True
① a <= b ② a != int(b) ③ str(a) != b ④ a is not int(b) ⑤ int(a) >= int(b)
- 답 및 해설
① a <= b
=> a는 int형, b는 str형 데이터이기 때문에 자료형을 서로 일치시키지 않으면 서로 비교할 수 없다.
2. 다음 중 변수를 메모리에서 삭제하기 위해 사용하는 명령어는?
① remove ② clear ③ del ④ pop ⑤ delete
- 답 및 해설
③ del
a=3
print(a)
del a
print(a)
3
Traceback (most recent call last):
File "C:\Users\quddu\workspace\a=3.py", line 5, in <module>
print(a)
NameError: name 'a' is not defined
3. 입력받은 섭씨온도를 화씨온도로 변환하는 프로그램을 코딩하려 한다. 코드 순서를 바르게 나열한 것은?
(1) fahrenheit = ((9/5)*celsius)+32
(2) celsius=input('섭씨온도를 입력하세요 : ')
(3) print('섭씨온도:', celsius, '화씨온도:', fahrenheit)
(4) celsius = float(input('섭씨온도를 입력하세요 : '))
① 4-2-3 ② 4-3-1 ③ 1-2-3 ④ 4-1-3 ⑤ 2-1-3
- 답 및 해설
④ 4-1-3
# 입력
celsius = float(input('섭씨온도를 입력하세요 : '))
fahrenheit = ((9/5)*celsius)+32
print('섭씨온도:', celsius, '화씨온도:', fahrenheit)
# 출력
섭씨온도를 입력하세요 : 32
섭씨온도: 32.0 화씨온도: 89.6
4. 다음 중 파이썬의 변수명으로 적절치 않은 것은?
① ABC1982 ② abc1982 ③ 1982abc ④ abc_23 ⑤ _23abc
- 답 및 해설
⑤ _23abc.
=> 파이썬에는 변수명 맨 앞에 언더바(_)가 올 수 없다.
5. box = "apple"의 뜻은?
① box 변수의 이름은 apple이다.
② box 변수에 apple 값을 넣어라
③ box 변수와 apple은 같다
④ box 변수는 apple이다
⑤ apple 변수는 box이다.
- 답 및 해설
② box 변수에 apple 값을 넣어라
=> box = "apple"이란, box라는 변수를 메모리 공간에 할당받은 후 "apple"이라는 데이터를 box에 저장하라는 명령어다. " "로 작성하는 경우 str형으로 작성되므로 타입은 문자열.
6. 다음과 같이 코드를 작성했을 때, 실행 결과로 알맞은 것은?
a="1.5"
b=4
print(a*b)
① 에러 발생 ② 1.51.51.51.5 ③ 6.0 ④ 6 ⑤ "6"
- 답 및 해설
② 1.51.51.51.5
=> a에는 "1.5"라는 문자열이 저장되어 있고, b에는 4라는 정수가 저장되어 있다. 문자와 정수의 곱연산은 문자를 정수만큼 반복하라는 의미이므로, 1.5라는 문자열이 4번 반복된 형태의 문자열이 출력된다.
7. 변수(variable)에 대한 설명으로 틀린 것은?
① 프로그램에서 사용하기 위한 특정한 값을 저장하는 공간이다.
② 선언되는 순간 메모리의 특정 영역에 공간이 할당된다.
③ 변수에 할당된 값은 하드디스크에 저장된다.
④ A = 8은 “A는 이다”라는 뜻이 아니다.
⑤ ‘2x+7y’는 14라고 하면, 이 식에서 x와 y가 변수이다.
- 답 및 해설
③ 변수에 할당된 값은 하드디스크에 저장된다.
=> 하드디스크가 아니라 메모리 공간에 저장된다.
8. 다음과 같이 코드를 작성했을 때, 실행 결과로 알맞은 것은?
53 % 10
① 0.53 ② 530 ③ 512 ④ 3 ⑤ 5
- 답 및 해설
④ 3
=> 53과 10은 모두 정수(int)형 데이터고, %는 정수를 정수로 나눴을 때 나머지를 반환해주는 연산자이므로 실행 결과는 3.
9. 다음과 같이 코드를 작성했을 때, 실행 결과로 알맞은 것은?
a="10"
b="40"
print(type(float(a/b)))
① <class 'float'> ② <class 'int'> ③ <class 'str'> ④ TypeError ⑤ 025
- 답 및 해설
④ TypeError
=> print(type(float(a/b))) 은 다음 순서대로 실행된다. a/b -> float(a/b) -> print(type(float(a/b)))
맨 처음으로 실행되는 a/b는, a와 b가 모두 str형 데이터기 때문에 TypeError를 일으키며 실행되지 않고, 그 뒤도 마찬가지.
10. 다음과 같이 코드를 작성했을 때, 실행 결과로 알맞은 것은?
a=572
print(type(a))
① <class 'integer'> ② <class 'int'> ③ <class 'str'> ④ <class 'string'> ⑤ <class 'float'>
- 답 및 해설
② <class 'int'>
# 입력
a=572
print(type(a))
# 출력
<class 'int'>
11. 다음과 같은 코드 작성 시, 빈 칸에 알맞은 코드를 고르시오
# 입력
a='3'
b='2.1'
print(빈칸)
# 출력
2.12.12.1
① int(a)*b ② a*b ③ a*int(b) ④ int(a)*int(b) ⑤ float(a)*b
-답 및 해설
① int(a)*b
=> 출력값은 2.1이라는 문자열, 즉 b가 3번 반복되는 형태의 문자열이다. a를 int형으로 바꿔주고 곱하면 된다.
13. 다음과 같이 코드를 작성했을 때 실행 결과로 알맞은 것은?
x=15
x=x+5
print(x)
① 15 ② 20 ③ x+5 ④ 5 ⑤ "print x"
- 답 및 해설
② 20
=> x라는 변수에 15라는 int형 데이터가 할당된다 -> x와 5를 더한 값, 즉 20이 다시 x라는 변수에 할당된다 -> print(x)
14. 다음과 같은 코드 작성 시, 빈 칸에 알맞은 코드를 고르시오
# 입력
a=10
b=30
c=10.5
print(빈칸)
# 출력
30010.5
① str(a*b)+str(c)
② str(a)+str(b)+str(c)
③ a*b+st(c)
④ int(a)+str(b)+str(c)
⑤ a+b+c
- 답 및 해설
① str(a*b)+str(c)
=> 우선 a, b는 int형, c는 float형 데이터다. 출력값은 300이라는 str형 데이터와 10.5라는 str형 데이터의 합으로 나타낼 수 있고, 300은 30과 10을 곱해주면 된다.
# 입력
a=10
b=30
c=10.5
print(str(a*b)+str(c))
# 출력
30010.5
15. 다음과 같이 코드를 작성했을 때 실행 결과로 알맞은 것은?
x=1
x+=5
x=x+5
print(x)
① 10 ② 1 ③ 5 ④ 15 ⑤ 11
-답 및 해설
⑤ 11
=> x += 5는 x = x+5와 같은 의미를 갖는다. 비단 + 뿐만 아니라 -, * / 등등의 연산자에도 동일하게 적용된다.
x=1 : x에 1을 할당
x += 5 : x, 즉 1에 5를 더한 값을 x에 할당.
x = x+5 : x, 즉 6에 5를 더한 값을 x에 할당.
# 입력
x=1
x+=5
x=x+5
print(x)
# 출력
11
17. 동적 타이핑의 의미를 설명하고, 예시를 제시하시오
- 답
: 동적 타이핑이란, 데이터의 자료형(int, str, float 등등)이 미리 결정되어있는 것이 아니라 프로그램 실행 시점에 결정되는 언어를 말다. 즉 자료형을 설정하지 않고 그냥 입력해도 자동으로 인식되어 할당된다. 예시는 아래와 같다.
# 입력
a=1
b=0.5
c='str'
d=b
print(a, type(a))
print(b, type(b))
print(c, type(c))
print(d, type(d))
# 출력
1 <class 'int'>
0.5 <class 'float'>
str <class 'str'>
0.5 <class 'float'>
'STUDY > Python' 카테고리의 다른 글
[데이터 과학을 위한 파이썬 프로그래밍_2판] 7. 자료구조 (3) | 2023.08.21 |
---|---|
[데이터 과학을 위한 파이썬 프로그래밍_2판] 5. 함수 (0) | 2023.08.18 |
[데이터 과학을 위한 파이썬 프로그래밍_2판] 4. 조건문과 반복문 (0) | 2023.08.17 |
[데이터 과학을 위한 파이썬 프로그래밍_2판] 3. 화면 입출력과 리스트(2) (0) | 2023.08.16 |
[데이터 과학을 위한 파이썬 프로그래밍_2판] 3. 화면 입출력과 리스트(1) (0) | 2023.08.16 |