[파이썬] 동적 타이핑 vs. 정적 타이핑

Python은 동적 타이핑 언어로, 정적 타이핑 언어와 다르게 변수의 타입을 선언하지 않아도 됩니다. 이는 변수를 사용하기 전에 그 변수가 어떤 타입의 데이터를 저장하는지 명시하지 않고도 변수를 사용할 수 있게 해줍니다.

예를 들어, 다음과 같이 변수 a에 정수 1을 할당합니다.

a = 1

그리고 변수 a에 문자열 "Hello"을 할당합니다.

a = "Hello"

Python은 변수 a가 정수이던 문자열이던 상관없이 변수 a에 다른 타입의 데이터를 할당할 수 있게 해줍니다.

반면 정적 타이핑 언어는 변수를 사용하기 전에 그 변수가 어떤 타입의 데이터를 저장하는지 명시해야 합니다. 예를 들어, Java의 경우 다음과 같이 변수 a가 정수인 것을 명시합니다.

int a = 1;

그리고 변수 a에 문자열을 할당하려고 하면 에러가 발생합니다.

a = "Hello"; // Error

따라서 정적 타이핑 언어는 변수를 사용하기 전에 그 변수가 어떤 타입의 데이터를 저장하는지 명시해야 하며, 동적 타이핑 언어는 변수를 사용하기 전에 그 변수가 어떤 타입의 데이터를 저장하는지 명시하지 않아도 됩니다.