TeamH4C_ProjectH4C/프로그래밍 언어

[TeamH4C_Python] 변수와 데이터

P4P3R_H 2021. 1. 20. 22:06

안녕하세요! Hak2입니다.

오늘은 변수와 데이터에 대해 정리하겠습니다.

 

1. 수의 계산

숫자의 자료형(형식)들의 계산식은 각 자료형에 따라 결과가 다른 형태로 출력됩니다. 그렇기에 숫자의 자료형들을 계산하기 전에 정확히 파악해야 합니다.

숫자의 자료형은 정수(int), 실수(float), 복소수(complex)가 존재합니다. 정수형(integer type)은 0을 포함한 음수와 양수를 뜻합니다. 실수형(floating point)은 소수점으로 표현된 숫자들이고, 복소수(complex number)는 허수로서 공학분야에서 주로 사용되어 우리가 프로그래밍을 하며 대부분 사용되는 자료형은 정수(int)와 실수형(float)이 될 것입니다.

IDLE 또는 명령 프롬프트에서 파이썬 셸을 실행시켜 사칙연산을 진행해보겠습니다.

위와 같이 파이썬에서는 덧셈, 뺄셈, 곱셈 나눗셈을 입력 시 값들이 출력되는 것을 볼 수 있습니다. 여기서 주의 깊게 봐야 할 것이 있는데 나눗셈(/)의 결과가 실수(float)로 표현되어 있는 것을 확인할 수 있을 것입니다.

보통 프로그래밍에서 정수(int)와 정수(int)끼리의 계산식에서는 결과가 정수(int)로만 표현되어 소수점이 나오는 결과라 할 지라도 소수점은 버리고 출력하였습니다. 하지만 파이썬 3에서는 나누기(/)를 하게 되면 실수(float)의 결과가 출력됩니다. 일반적인 수학과 비슷한 출력을 원하기 때문입니다. 그렇기에 파이썬 3에서의 나눗셈(/) 결과를 다른 프로그래밍에서의 결과처럼 정수(int)로 얻고자 한다면 버림 나눗셈(//)을 이용하여 소수점 뒷자리는 버린 후 출력하는 연산자를 이용하게 된다면 아래와 같이 정수(int)의 결과를 얻을 수 있게 됩니다.

 

버림 나눗셈(//)은 나눗셈의 결과에서 몫을 구하기 위해 주로 사용되며 실수(float)가 포함된 계산에서는 소수점 이하는 버린 실수(float) 형태로 출력됩니다.

몫을 구하는 식을 알아보았다면 이제 나머지를 구하는 연산자를 알아보겠습니다.

나눗셈을 한 후 나누어 떨어지지 않을 때 나머지가 나오게 되는데 프로그래밍 언어에서는 이 값을 모듈러 연산자(%)를 이용하여 나머지를 정수(int)로 출력합니다.

예로 5와 2를 나누어 계산할 때를 보겠습니다. 5를 2로 나누게 되면 몫은 2가 되고 나머지는 1이 되는데 아래의 그림과 같이 숫자 1만을 출력하게 되는 것을 모듈러 연산(%)을 통해 가능한 것입니다.

여기서 주의할 점은 소수점 뒷자리를 출력하는 것이 아닌 나누어 떨어지지 않는 값을 출력하는 것입니다.

이렇듯 많은 연산자로 계산을 간단히 할 수 있습니다. 대표적으로 몇 개만 더 정리하겠습니다.

 

거듭제곱(**)의 활용으로 쉽게 거듭제곱의 값을 구할 수 있습니다. **는 거듭제곱의 연산자로 숫자를 특정 횟수만큼 곱하는데 이용됩니다.

# 다음과 같은 예
>>> 2**3
8 #2의 3승의 결과가 출력됩니다.

 

몫과 나머지를 한 번에 구하는 divmod의 연산자를 사용함으로 여러 개의 값을 묶을 때 사용하여 값이 괄호로 묶인 형태인 튜플(Tuple) 형태로 몫과 나머지가 출력되며, 이 값들은 각각 변수에 저장되어 활용도 가능합니다.

>>> divmod(5,2)
(2, 1) #몫이 앞, 나머지가 뒤에 출력

#몫과 나머지를 변수에 따로 저장
>>> a,b = divmod(5,2)
# 변수 a에는 몫인 2가 저장되고, b에는 나머지인 1이 저장됩니다.

변수는 2번 항목에서 자세히 다루겠습니다.

 

지금부터 실수의 계산에 대해 정리하기 전 형변환에 대해 알아보겠습니다. 파이썬 객체의 타입(Type)에는 문자열(str), 정수(int), 실수(float), 복소수(complex) 등 여러 가지가 있습니다.

각 객체의 타입(Type)이 어떤 자료형을 가지는지 확인하기 위해서는 type(객체)의 형태의 명령을 사용하면 지금까지 사용한 객체(object)가 어떤 자료형을 가지는지 아래와 같이 확인이 가능합니다.

>>> type(1)
<class 'int'> #숫자의 타입을 확인하였을 때 int라는 정수로 표현되어 있는 것을 알 수 있습니다.

>>> type('1')
<class 'str'> #숫자1이 문자열을 표현하는 작은따옴표(')로 싸여있어 class가 문자열로 표현되었다는 것을 확인할 수 있습니다.

이러한 타입들을 강제로 변환해주는 것이 형변환입니다. int class로 표현되어 있는 객체를 float class로 변환하거나 str class로 변환하는 작업입니다.

타입을 변환하고자 하는 객체를 변환하려는 타입으로 감싸게 되면 형변환이 이루어집니다. 간단한 코드로 살펴보겠습니다. 

>>> int(1.5)
1 # 실수인 1.5의 값이 정수로 변환되면서 소수점은 버려지고 숫자 1만 남은 상태
>>> float(1)
1.0 # 정수 1이 실수로 변환되어 소수점이 표시
>>> str(1)
'1' # 정수 1이 문자열로 변환되어 작은따옴표로 감싸진 것을 확인

 

진법에 대한 표현은 대표적으로 우리가 흔히 사용하는 0부터 9의 숫자 이외에 더 존재합니다. 2진수, 8진수, 10진수, 16진수가 대표적입니다. 우리가 흔히 사용하는 진수법은 10진수로 0부터 9의 숫자를 이용하여 숫자를 표현하는 방식입니다.

2진수(binary)는 디지털에 안정적인 숫자이며 파이썬에서는 0b를 붙여 숫자를 표현하는 수입니다.

8진수(octal)는 0부터 7의 숫자를 이용하는 숫자로 파이썬에서는 0o(숫자, 영어 순) 또는 0O(숫자, 영어 순)을 붙여 표현합니다.

16진수(hexadecimal)는 0부터 9, A부터 F의 문자를 이용하여 10진수에서의 0부터 15까지의 숫자를 표현합니다. 10이라는 숫자 대신 A를 사용하는 이유는 10은 반올림된 수이기에 16진수의 10은 10진수의 16이 됩니다. 그렇기에 A라는 문자를 이용하게 된 것입니다. 이 16진수는 0x 또는 0X를 붙입니다.

>>>0b100
4 # 2진수 100이 10진수 4로 변환되어 출력
>>>0o100
64 # 8진수 100이 10진수 64로 변환
>>>100
100 # 10진수 그대로 출력
>>>0x100
256 # 16진수 100이 10진수 256으로 변환

 

이제부터는 수의 계산의 마지막으로 실수와 복소수에 대해 알아보겠습니다.

실수(float)의 계산은 소수점으로 되어있는 수의 계산으로 예로 다음과 같은 계산이 되겠습니다.

>>>3.5+2.5
6.0
>>>3.5-2.5
1.0
# 소수점의 계산에서 예상하지 못한 값이 출력될 수도 있는데 표현범위의 한계로 생긴 오차로 생각하시면 됩니다.

이렇듯 소수점이 포함되어 있는 계산에서는 소수점의 결과가 나온다는 것입니다. 여기서 궁금한 것이 생기는데 소수점과 소수점이 없는 수를 계산하면 어떤 형식으로 나올지 궁금하실 겁니다.

실수와 정수를 함께 계산하게 된다면 컴퓨터는 데이터의 형태에 따라 다른 연산 방법을 사용하기에 두 개의 피연산자의 형태를 같은 형태로 변환하는 작업을 먼저 수행할 것입니다. 이것을 자동 형변환이라 하며 표현 범위가 작은 값이 표현 범위가 큰 값으로 변환되어 계산이 될 것입니다. 그렇기에 정수와 실수의 계산에서는 표현 범위가 큰 실수로 변환되어 실수끼리의 계산과 같이 실수로 값이 출력됩니다.

>>>1.5 + 2
3.5
# (실수)1.5 + (실수로 자동변환)2.0 = 3.5

>>>1.5 + float(2)
3.5
# (실수)1.5 + (실수로 형변환)2.0 = 3.5
# 원하는 값을 얻기위해 형변환을 수동으로 해주는 것이 좋습니다.

여기서 자동 형변환은 원하던 계산의 방향으로 흘러가지 않을 수 있기 때문에 앞에서 배운 형변환을 통해 강제로 객체의 타입(type)을 변환시켜 계산하는 것이 좋습니다.

복소수(complex)의 계산은 실수부와 허수부로 이뤄져 있습니다. 실수 부분은 실수끼리 계산되고 허수 부분은 허수끼리 계산이 되는 연산입니다. 허수부 뒤에 수학에서는 i를 붙이지만 공학에서는 문자 j를 붙여 표현합니다.

>>>1.5 + 1.3j
(1.5+1.3j)
# 이와 같이 실수부와 허수부로 구분되어있습니다.

>>>complex(1.2, 1.3)
(1.2+1.3j)
# 두 실수를 허수부로 만들기 위해서는 위와같이 complex를 이용하면 됩니다.

 

이런 계산식들은 파이썬 프롬프트(>>>)에서 식만 작성해도 파이썬 셸에서 출력이 되었지만, 소스파일(스크립트 파일)에서의 계산식은 print처럼 출력을 해주는 명령을 추가하여 값을 출력해주어야 합니다.

print(1+1)

또한, 여러 식이 존재하는 계산식에서는 괄호()를 사용하여 식의 우선순위를 정하여 계산을 진행해야 합니다. 그렇게 해야 원하는 결과를 출력해 낼 수 있을 것입니다.


2. 변수(Variable)

변수는 만들어진 결과를 박스에 저장한다는 형식으로 생각하시면 됩니다.

숫자 10이 저장할 곳이 없는 상태로 돌아다니면 숫자 10은 사라지게 될 것입니다. 우리는 숫자 10이 사라지지 않도록 박스에 넣어 가지고 다니는 상태라고 생각하시면 됩니다. 이것을 프로그래밍에서는 변수(variable)이라 합니다.

파이썬에서의 변수 생성 선언방식은 [변수=값] 형태를 가집니다. 여기서 등호(=) 기호는 수학에서 양변이 같다는 뜻이지만 프로그래밍 언어에서는 변수에 값을 할당(assignment)한다는 뜻을 가지고 있습니다. 프로그래밍 언어에서의 같다의 뜻의 기호는 (==)를 사용합니다.

변수가 생성되는 동시에 값을 할당되어야 하며 할당할 값이 아직 정해지지 않았을 때 값이 들어있지 않다는 것을 알려줘야 하는데 빈 변수를 만드는 방법으로 None을 할당해주면 됩니다. 그러면 변수의 값이 할당되지 않았다는 것을 알려주는 것이 됩니다.

>>>a = 10
# 변수a에 숫자 10을 할당

>>>a = None
# 변수a에는 아직 값이 할당되지 않아 아무것도 없는 상태입니다.

또한, 변수에는 숫자뿐만 아니라 문자열도 저장이 가능합니다. 값 부분에 작은따옴표(')를 사용하여 문자열을 입력하면 변수에 문자열이 저장이 됩니다.

>>>y = 'Hello world!'
# y변수에 'Hello world!'를 할당
>>>y
'Hello world!'
# y변수에 할당되어있는 'Hello world!'를 볼 수 있습니다.

변수의 할당 규칙은 다음과 같습니다.

  • 영문 문자와 숫자를 사용할 수 있음
  • 대소문자를 구분 ( 변수 a와 A는 다른 변수)
  • 문자부터 시작해야 하며 숫자부터 시작하면 안 됨
  • 밑줄 문자(_)로 시작할 수 있음
  • 특수문자(+, -, *, /, $, @, &, % 등)는 사용할 수 없다.
  • 파이썬의 키워드(if, for, while, and, or 등)는 사용할 수 없다.

 

변수에는 여러 개의 값을 변수에 한 번에 할당하여 처리할 수 있는 방법이 있습니다. [변수 이름 1, 변수 이름 2, 변수 이름 3 = 값 1, 값 2, 값 3]의 형식으로 콤마(,)로 구분하여 각 변수에 할당될 값을 지정하여 할당하게 됩니다.

>>>a, b, c = 1, 2, 3
# 순서대로 1은 a, 2는 b, 3은 c에 할당됩니다. 개수가 맞지않으면 에러가 발생됩니다.

모두 같은 값을 할당하기 위해서는 [변수 이름 1 = 변수 이름 2 = 변수 이름 3 = ]의 형식으로 선언하면 모두 같은 값으로 할당된 변수로 만들어집니다.

두 변수의 값을 서로 바꾸기 위해서는 변수를 할당할 때 서로의 자리를 바꿔 할당하면 두 변수에 할당되어 있는 값이 서로 바뀌게 될 것입니다.

>>>a, b = 1, 2
>>>a, b = b, a
# a에 원래 1이 할당되고, b에는 2가 할당되었었지만, 두 변수를 서로 할당시켜 두 변수의 값을 바꾸었습니다.
# 결국에 a에는 2가 할당되어있고, b에는 1이 할당되어있습니다.

 

변수의 생성에 대해 알아보았다면 이제 변수의 삭제도 가능할 것입니다. 변수의 삭제는 del을 사용하여 삭제를 진행합니다. 변수 삭제는 지금보다는 리스트를 사용할 때 유용하게 사용이 됩니다.

>>>x=10
# 변수 x에 10이 할당
>>>del x
# 변수 x의 값 전체가 삭제되어 더이상 변수 x는 다시 할당되지 않는이상 출력되지 않을 것입니다.

 

지금부터 변수의 활용에 대해 정리하겠습니다. 변수를 이용한 계산입니다.

변수로 계산하는 것은 두 변수에 값을 할당한 후 두 변수를 더해 다른 변수에 할당하는 방식처럼 계산을 할 수 있는 것을 말합니다. 계산법 중 변수에 값을 할당 후 변수의 값 증가에 대한 계산을 주의 깊게 봐야 합니다.

할당 연산자에는 값이 들어있는 변수에 추가적인 값을 더 추가시키는 방법을 간략한 연산자로 만든 것이 존재하는데 복합 대입 연산자라고도 합니다. 예로 만약 a라는 변수에 10이라는 숫자가 있었지만 변수 a의 값에 20을 더 증가시키고 싶어 계산 결과를 다시 변수에 저장하는 것입니다. 자세한 코드를 보여드리겠습니다.

>>>a = 10
>>>a + 20
>>>a
10
# a에 20을 더 더하고 싶어 20을 더했지만, a를 출력하면 그대로 10이 나오는 것을 볼 수 있습니다.
# 이는 a의 값에 20이 증가된 것이 아니고 임시공간에서 a에 20을 더하고 사라졌기 때문에 a에는 20이 더해지지 않은 것입니다.
# 이와같은 문제점을 해결하고자 계산결과를 다시 a의 변수에 저장을 시켜 할당해야됩니다.

>>>a = a + 20
>>>a
30
# a의 변수에 다시 결과를 저장하니 a의 값에 20이 더 증가한 것을 볼 수 있을 것입니다.

이와 같이 연산 결과를 다시 피연산자에 저장하는 것을 간략히 할당 연산자를 이용하여 [a+=20]으로 표현이 가능합니다.

할당 연산자는 연산 후 할당(=)한다는 뜻으로 아래와 같이 왼쪽 피연산자에는 값이 선언된 변수가 와야 하고, 오른쪽의 항의 계산이 모두 끝난 뒤 할당 연산자가 계산이 됩니다.

  • a += 20 → a = a + 20
  • a -= 20 → a = a - 20
  • a *= 20 → a = a * 20
  • a /= 20 → a = a / 20

할당 연산자의 종류에는 +=, -=, *=, /=, //=, %= 등 여러 산술 할당 연산이 존재합니다. 

 

변수에는 숫자와 같이 부호도 붙일 수 있습니다.

변수나 값 앞에 부호를 붙이는 경우가 있는데 양수, 음수의 기호(+, -)를 붙이면 됩니다. 프로그래밍 언어에서의 부호의 개념은 일반적으로 수학에서 배운 내용과 같다고 볼 수 있습니다.

>>>x = -10
>>>-x
10
# 변수 x의 값에 -를 붙여 -(-10)과 같이 출력하여 -가 +가 된 것을 확인

 

변수에도 자료형이 중요하며 수의 계산에서의 타입(type)과 마찬가지로 자료형 확인이 중요합니다. 여러 변수를 사용하다 보면 자료형이 맞지 않아 에러가 발생하여 원하는 결괏값을 얻지 못하는 문제를 자주 접하게 되는데 이러한 문제점을 type을 사용하여 자료형에 대한 문제를 해결해야 합니다.

이제 변수에 입력값을 할당하는 방식을 알아보겠습니다. 프로그래밍 과정에서 직접 할당이 아닌 입력 값을 받아 유동적인 값을 사용하는 방식입니다.

input 함수를 이용하여 사용자의 입력을 받아 사용하면 됩니다. 파이썬 프롬프트(>>>)에 input()을 입력하면 커서가 깜빡이면서 입력을 할 수 있게 됩니다. 이때, 내가 입력받고 있는 상태인지 확인을 해주지 않아 입력받고 있는 상황인지 어려울 수 있습니다. 그렇기에 input의 괄호 안에 문자열을 넣어 지정해하여 입력을 받고 있는 상태인지 미리 용도와 입력받아야 할 타입이 무엇인지를 확인시켜 주기도 합니다.

input함수의 결과를 변수에 할당하는 방법은 변수 = input()으로 input의 함수로 입력받은 내용을 변수에 할당하겠다는 뜻이 됩니다. input으로 입력받은 값은 문자열(str)로 할당됩니다.

입력값을 한 번만 받는 것이 아니라 두 변수에 저장하는 방법은 input에서 split을 사용하여 변수 여러 개에 저장해주면 됩니다. 변수는 콤마로 구분되며 input과 split의 사이에 온점(.)을 사용해주면 됩니다.
[변수 1], [변수 2] = input().split() 형식으로 작성하고 split함수 안에 기준 문자열을 추가하여 입력받은 값을 무엇으로 구분할지 정할 수 있습니다.

사용자가 입력하여 값을 할당하는 방법을 알아보았으니 변수에 숫자를 입력받아 계산하는 문제를 보겠습니다.

>>>a = input('첫 번째 숫자를 입력하시오 : ')
# 위와 같이 문자열을 넣어 입력의 확인을 쉽게 할 수 있습니다.

>>>b = input('두 번째 숫자를 입력하시오 : ')
>>>a+b
# 결과 출력 시 a와 b의 수가 더해지는 것이 아니고 a에 입력된 수 뒤에 b에 입력된 수가 붙어서 출력될 것입니다.
# 왜냐하면, input으로 받은 입력값은 '문자열'이기 때문입니다.
# 숫자의 결과로 받기위해서는 a와 b를 입력받고 정수로 변환해야합니다.

>>>a, b = input('두 개의 숫자를 입력하시오 : ').split()
# split()안이 빈칸이면 공백으로 값이 구분되며, 문자가 있으면 그 문자로 구분됩니다.
# split(',')이면 입력을 할 때 두 개의 숫자 사이에 콤마(,)를 붙여야 됨

숫자로 변환하기 위해서는 앞서 배웠던 형변환의 형식으로 변환하는 방법이 있을 것입니다. [a=int(a)]와 같이 형변환을 하거나 보다 코드를 짧게 하기 위해 input().split() 함수를 사용하는 코드에서 map함수를 사용하여 정수로 변환할 수 있습니다.

map의 함수를 사용하는 형식은 [map(int, input().split())]와 같이 map에서 처음 오는 부분에 원하는 자료형을 넣어 형변환을 시켜주면 됩니다.

>>>a, b = map(int,input('두 수를 입력하세요 : ').split(',')
두 수를 입력하세요 : 1, 2 # 두 수를 콤마로 구분하여 입력
>>>a+b
3
# input으로 받은 문자열이 map을 통해 정수로 변환되어 더하기를 하여도 숫자로 인식되어 숫자계산의 결과가 출력됩니다.

 

3. 출력의 방법

여러 개의 입력을 받는 방법을 알아보았으니 이제 여러 값의 출력을 하는 방법에 대해 정리하겠습니다.

print하나로 여러 개의 값의 출력 형태를 설정하는 방법으로 print에서는 변수나 값 여러 개를 콤마(,)로 구분하여 출력할 수 있습니다.

>>>print(1, 2, 3)
1 2 3
>>>print('hello', 'python')
hello python
>>>a, b = 1, 2
>>>print(a, b)
1 2
# 각 값들이 공백으로 띄어져 한줄로 출력됩니다.

 

sep의 함수를 이용하여 값 사이에 문자도 넣을 수 있습니다.

값 사이에 공백이 아닌 다른 문자를 넣고자 할 때 sep을 이용하면 되는데 print함수 안에 sep을 추가하여 문자 또는 문자열이 구분자로 설정되어 출력되는 것을 볼 수 있습니다. 그렇기에 sep(separator)은 구분자라는 뜻을 가지고 있습니다.

>>>print(1,30,sep=':')
1:30
# sep을 ':'로 설정하여 각 값들 사이에 ':'로 공백대신 넣어지는 것을 확인할 수 있습니다.

 

줄 바꿈을 활용하여 출력할 수도 있습니다. print에 값을 여러 개 지정할 시 한 줄에 모두 출력이 되는데 이것을 한 줄씩 나눠 출력하기 위해서는 print를 하나씩 넣어 출력하거나 print의 sep을 이용하여 줄 바꿈도 가능합니다. print는 기본적으로 출력하는 값 끝에 자동 줄 바꿈이 되지만 하나의 print에 여러 개의 값이 줄 바꿈 출력이 필요하면 print안에서 줄 바꿈을 해줘야 합니다. sep을 이용한 줄 바꿈에는 제어 문자를 이용한 줄 바꿈을 할 수 있을 것입니다.

제어 문자는 화면에 출력되지 않고 출력 결과를 제어한다 하여 제어문자라 불리며 '\'로 시작하는 이스케이프 시퀀스입니다.

제어 문자의 종류

  • \n : 다음 줄로 이동하라는 문자이며 개행이라고도 합니다.
  • \t : 탭 문자이며 여러 칸을 띄웁니다.
  • \\ : \문자를 화면에 출력하라는 제어 문자입니다.

※ '\'는 [역슬래시]로서 [백슬래시]라고도 하는 슬래시를 뒤집어놓은 모양입니다. 한글자판에서는 원화모양(₩), 일본자판에서는 엔화모양(¥)이 백슬래시를 표현합니다.

sep을 이용한 제어 문자 줄 바꿈 이외에도 print자체에서 각 값들 사이에 제어 문자를 바로 넣어 사용도 가능합니다.

>>>print('hello'); print('python')
hello
python
>>>print('hello','python',sep='\n')
hello
python
>>>print('hello','\n','python',sep='')
hello
python
>>>print(30,'\n',10)
30
 10

# print를 하나의 객체마다 넣어주거나 sep을 이용하여 줄바꿈을하거나 문자인 '\n'을 print에 넣어 줄바꿈을 할 수 있습니다.

 

자동 줄 바꿈을 없애기 위한 end의 사용

print는 기본적으로 자동 줄 바꿈이 된다 하였는데 여러 개의 print사용에서 줄 바꿈을 없애기 위해서는 end를 활용하면 됩니다. end에 빈 문자열을 지정하면 다음 출력이 바로 뒤에 붙여져 출력이 됩니다. 형식은 [print(값, end = '문자 또는 문자열')]형식으로 되어있으며 end에 빈 문자열을 지정하면 강제로 print가 내부적으로 실행하는 '\n'을 없애줘 줄 바꿈이 되지 않습니다.

줄 바꿈을 지우고 숫자 사이를 띄우고 싶으면 빈 문자열 대신 공백을 넣어주면 값과 값 사이도 공백으로 됩니다.

>>>print(20, end=''); print(21)
2021
>>>print(20, end=' '); print(21)
20 21
# 위와 같이 end는 \n을 없애주고 값 사이에 무엇을 넣을 지 정하면 됩니다.
# end는 줄바꿈을 없애려는 print에 넣어주면 됩니다.

 

4. 정리 문제

1. 1과 1.0을 컴퓨터는 정수와 실수로 구분하여 처리합니다.

2. 나눗셈 연산자(/)의 결과는 실수, 버림 나눗셈(//)의 결과는 정수입니다.

3. 10/4를 계산하 결과 → -2.5

4. 10//3을 실수로 만들기 → float(10//3)

5. 7+(10-5)*2의 계산 결과 17

6. 소음이 가장 심한 층은 0.2467*도로와의 거리(m)+4.159일 때, 소음이 가장 심한 층수가 출력되는 코드(소수점 이하 버리고 거리는 12m) print(int(0.2467*12+4.159))

7. 변수 = 값의 형태로 변수를 선언해야 합니다.

8. 변수의 이름의 규칙은 간단히 숫자로 시작하면 안 되고, 파이썬에서 사용하는 함수면 안되고, 특수문자를 사용하면 안 됩니다.

9. 할당 연산자의 사용방법으로 a += 10과 같이 a에 10을 더한 후 다시 변수 a에 저장하라는 방식과 같이 사용합니다.

10. 두 개의 입력을 실수로 변환하는 방법 map(float, input('두 개의 실수를 입력 : ').split(,))과 같이 map을 이용하여 float로 변환합니다.

11. 세 개의 정수를 입력받은 후 합계를 출력하는 코드 a, b, c = map(int, input('세 개의 정수 입력 : ').split()); print(a + b + c)

12. 한 줄에 출력하기 위해서 print(값, 문자열, 숫자)와 같이 콤마(,)를 이용해야 합니다.

13. 두 값 사이에 문자를 추가하고 싶다면 sep을 이용하여 문자를 지정해주면 됩니다.

14. 두 줄로 출력하는 방법은 '\n'을 sep이나 print자체에 넣어 활용하면 됩니다.

15. 날짜를 입력받아 출력하는 코드 year, month, day = map(int, input('년도, 월, 일을 입력하시오 : ').split('/')); hour, minute, second = map(int, input('시간, 분, 초를 입력하시오 : ').split(':')); print(year, month, day, sep='/', end=' '); print(hour, minute, second, sep=':')