파이썬의 문법중 가장 독특하고 생각되는 특징이 블록 구조인데요.
대다수의 언어들이 중괄호{}
로 블록을 구분하였습니다.
그와 다르게 파이썬은 :
와 들여쓰기
로 구분합니다.
python에서 들여쓰기의 칸 수는 일반적으로 4칸입니다.
그렇다면 중괄호{}
를 사용하는 언어들과는 어떠한 차이점이 있을까요?
// C
int main()
{
printf("Hello World\n");
}
# python
def main():
print("Hello World");
이것만 보았을 때는, C 언어와는 차이가 거의 없어 보입니다.
다음 예를 보시죠
// C
int main()
{
// 정상동작
printf("Hello World\n");
}
# python
def main():
# 에러 발생
print("Hello World");
네 아래와 같은 에러메세지가 나왔고, IndentationError 라고 하는 군요.
이 의미는 C언어에서 다음과 같다고 볼 수 있습니다.
함수의 범위를 구분하는 {}
가 없는 상황입니다.
// C
int main()
printf("Hello World\n");
정리하면 파이썬에서 들여쓰기는 아주 중요합니다. 들여쓰기를 잘못 하는 경우 개발자가 생각했던 로직과 다르게 동작할 수 있으니 조심해야됩니다.
큰따움표(""
)나 작은 따음표(''
) 안에 있는 글자들은 string
입니다.
ex) "안녕하세요", "Hello World!", "100"
정수 값을 이야기 합니다.
ex) 1, 2, 100
소수점 숫자를 이야기 합니다.
ex) 2.0, 3.7, 9.99
실수와 허수를 포함하고 있는 복소수를 이야기 합니다.
파이썬에서는 j
를 사용하여 허수를 표현합니다.
ex) 1+3j, 2-4j
True
나 False
이 2가지 값만 가지고 있으면 조건문에서 많이 사용됩니다.
ex)
True
False
False
(Data type이 틀리기 때문)여러 값들을 순차적으로 저장할 수 있습니다. 다른 타입의 값들도 할 수 있습니다.
list로 만들고 싶은 요소를 []
로 묶습니다.
ex)
기본적으로 tuple 은 list 와 동일하지만 tuple 값을 수정 할 수 없습니다.
tuple로 만들고 싶은 요소를 ()
로 묶습니다.
ex)
key
와 value
의 값으로 이루어져 있고, key
값이 먼저 나오고 그리고 :
이 위치하고 그 다음에 value
값이 나옵니다.{}
를 사용해 dictionary를 선언합니다.ex)
여러 값들을 저장할 수 있으나, list와 다르게 중복을 허용하지 않고, 순서가 없습니다.Dictionary의 key값과 개념이 비슷 한 것 같습니다.
tuple로 만들고 싶은 요소를 {}
로 묶습니다.
ex)
숫자를 더합니다. 10과 7를 더하기 때문에 17이 됩니다.
ex) num = 10 + 7 # 17
숫자를 뺍니다. 10과 7를 빼기 때문에 3이 됩니다.
ex) num = 10 - 7 # 3
숫자를 뺍니다. 10과 7를 곱하기 때문에 3이 됩니다.
ex) num = 10 * 7 # 70
숫자를 나눕니다. 10과 7를 나누기 때문에 3이 됩니다.
ex) num = 10 / 7 # 1.42....
숫자를 나누지만 소수점을 제외합니다. 10과 7를 나누기 때문에 1.42... 이 되지만 소수를 버리기 때문에 1이 됩니다.
list slicing
에서 활용하면 좋습니다.
ex) num = 10 / 7 # 1
나누기의 나머지 값을 계산할때 사용됩니다. 10과 7를 나누면 나머지가 3입니다.
ex) num = 10 % 7 # 3
수학에서 멱법 (Exponentiation)을 구할때 사용됩니다.
아래는 10의 2승이라는 뜻입니다.
num = 10 ** 2 # 100