기록하는 코더

[Python] 변수 본문

Python

[Python] 변수

damda_di 2022. 12. 24. 19:29

최근 파이썬 수업을 듣고 있어서

배운 것을 정리해보려고 한다.

 

Java를 배운 후 Python을 배우고 있어서

Java 문법을 기준으로 Python 문법을 접근하게 돼서 배운 부분을 계속 비교해보는 식으로 진행할 예정이다!


언어 특징

프로그래밍 언어가 나온 시대에 따라 언어의 형태가 비슷해지는 경향이 있다고 한다.

C언어 > Java > JavaScript > Python

 (* Python 언어는 최근에 나온 것은 아니지만 최근에 성공한 언어로써 )

 

 

기초를 배우면서 느낀 Java와 다른 점을 꼽자면

1. Python은 변수명을 따로 쓰지 않는 부분에서 JavaScript와 유사하다.

(Java는 형식 지정 언어이고 파이썬은 형식 비지정 언어이다.)

 

2. 코드 끝에 써야하는 ' ; (세미콜론)'이 없다.

3. Java에서는 배열의 크기를 처음부터 지정해줘야하지만 JavaScript와 Python의 배열은 가변형 배열

4. Python은 인터프리터 언어

* 인터프리터(interpreter)는 프로그래밍 언어의 소스 코드를 바로 실행하는 컴퓨터 프로그램

* 컴파일 언어가 인터프리터 언어보다 실행 속도가 빠르다.

  Interpreter 언어 Compiler 언어
과정 코드 실행 전, 컴파일 타임에 소스 코드 전체를 한번에
기계어로 변환 후 실행
코드 실행 전, 컴파일 타임에 소스 코드 전체를 한번에 기계어로 변환 후 실행
반복 코드 실행시마다 인터프리트 과정 반복 수행 컴파일은 한번만 수행
실행파일
생성여부
X O
단계 인터프리트 단계와 실행 단계 분리 X
인터프리터는 한 줄씩 바이트코드로 변환 후 즉시 실행
컴파일 단계와 실행 단계가 분리
속도 터프리트 단계와 실행 단계가 분리되어 있지 않아 반복 수행하므로 실행 속도가 느림
컴파일과 실행단계가 분리되어 있어, 실행시에는 실행만 하면 되므로 코드 실행 속도 빠름

 

** Python을 사용하면서 주의해야할 점!

import한 함수 코드 수정이 가능해서 코드를 실수로 고치는 경우 지우고 다시 깔아야 정상적으로 실행된다.


변수 사용

파이썬은 변수의 자료형을 지정해주지 않아도 변수 선언을 할 수 있다. (형식 비지정 언어)

 

a = 1
b = 2
c = '글자'
d = True

print(a + b)
print(b)
print(c)
print(d)

 

문자형을 숫자형으로 바꿀 땐 int(문자형)로

숫자형을 문자형으로 바꿀 땐 str(숫자형) 를 사용해서 바꿔준다.

a = 1
b = '2'
print(a + int(b))
print(str(a) + b)

 

숫자형끼리는 바로 연산이 가능하다.

(자료형이 다른 경우 TypeError: unsupported operand type(s) for +: 'int' and 'str' 에러 발생)

a = 1.2
b = 2

print(a + b)

 

논리형 변수는

자바에서 and(&&), or(||), not(!) 연산자를

문자 그대로 and, or, not으로 사용한다.

a = True
b = False

print(a and b)
print(a or b)
print(not b)

 

'Python' 카테고리의 다른 글

[Python] OOP(Object Oriented Programming)  (0) 2022.12.26
[Python] function  (1) 2022.12.24
[Python] Random  (0) 2022.12.24
[Python] 조건문과 반복문  (0) 2022.12.24
[Python] 문자, 배열  (0) 2022.12.24