컴파일러 : 작성한 코드를 컴퓨터가 이해할 수 있는 기계어로 바꾸는 것
ㄴ 소스 파일 > 기계어 > 실행
ㄴ 소스 전체를 실행 파일로 만든 후 기계에서 실행 = 번역
ㄴ C/C++, java
인터프리터 : 실행 파일을 만들지 않고 바로 기계어로 변환
ㄴ 소스 파일 > 실행
ㄴ 필요한 소스 코드만 그때 그때 실행 = 동시 통역
ㄴ Python
변수 : 데이터가 저장되어 있는 메모리의 특정 공간
변수를 처음 정의할 때 반드시 초기화 를 해야 함
변수 사용하는 이유 --> 데이터 재사용 (프로그램을 보다 효율적으로 관리할 수 있음)
변수 작성법
총 4가지
정수는 메모리가 허용되는 한 무한 사용 가능
실수는 대략 소수점 이하 17~18번째에서 데이터 손실 발생
참고로, 빈 문자는 데이터가 없고 공백 문자는 데이터가 있다.
input()
#1.
print(f'User : {userName}')
#2.
print('User : {}'.format(userName))
#3.
print('User : %s' % userName)
# 만약 이어 쓰고 싶다면
print(##, end=' ')
print(##)
print('User name : %s' % userName)
print('User name : %s, User age : %d' %(userName,userage))
print('Pi : %f' % 3.14)
print('Pi : %d' % 3.14)
print('Pi : %.0f' % 3.141592)
print('Pi : %.4f' % 3.141592)
+, -, *, / , %, //, **
곱셈, 나눗셈
나머지와 몫
0을 나눗셈하는 경우 -> 결과 항상 0
0으로 나누는 경우 -> Error 발생
나눗셈 결과는 항상 float
몫
a // b
나머지
a % b
몫과 나머지 한 번에
divmod(a,b)
거듭제곱
a ** b
a의 b 제곱근
a ** (1/b)
모듈 사용
import math
math.sqrt(a)
math.pow(a,b)
=, +=, -=, *=, /=, %=, //=
<, >=, >, <=, ==, !=
print('\'A\' -> {}'.format(ord('A')))
print('\'B\' -> {}'.format(ord('S')))
print('65 -> {}'.format(chr(65)))
print('83 -> {}'.format(chr(83)))
and, or, not