TIL DAY 4 || Python 기초문법

TK·2021년 2월 18일
0

TIL

목록 보기
4/55

Data Types

파이썬의 자료형에는 대표적으로 다음과 같은 것들이 있다.

  • Integer
  • Float
  • Complex Numbers
  • String
  • Boolean

Integer

int 라고 쓰이며 정수값이다.

Float

float 라고 쓰이며 2.99, 3.0 과 같이 소수점을 포함한 값이다.

Complex Numbers

11+2j 처럼 실수와 허수를 포함하고 있는 복소수를 이야기 한다.

String

str 로 표기되며, "Hello World!", "24" 등이 string 이다.

Boolean

조건문에 주로 사용되며 TrueFalse 두개의 값을 가지고 있다. 예를들어 1 == 2 는 False 값을 리턴한다.

Math Expression

파이썬에는 대표적으로 다음과 같은 상급 수학 연산자들이 있다.

  • Add
  • Subtract
  • Multiple
  • Divide
  • Increment
  • Decrement
  • Exponentiation
  • Modulo operator

Add, Subtract, Multiple, Divide

더하기, 빼기, 곱하기, 나누기의 연산자는 각각
+ - * /
로 표현된다.

1 + 2 # 3
1 - 2 # -1
1 * 2 # 2
1 / 2 # 0.5

Increment, Decrement

a = 10
a += 1 
print(a) # 11

b = 5
b -= 1
print(b) # 4

다음과 같이 파이썬은 +=,-= 연산자를 지원하며, 각각 우변에 있는 값을 더하고/ 빼고 바로 그 결과 값을 변수에 저장한다.

/=, *= 도 마찬가지로 비슷한 역할을 수행한다.

Exponentiation

지수 계산식을 표현하고 싶을 때 쓰는 지수 연산자이다.
파이썬은 ** 연산자를 지원한다.
예를들어 2 ** 5 의 값은 32 이다.

Modulo operator

어떤 값을 특정 값으로 나눈 나머지 값을 알고싶을 때 쓰면 된다.

파이썬에서는 % 연산자를 지원하며, 100 % 3 의 값은 1 이다.

Order of Arithmetic Operators

수학 연산을 할 때 우리가 흔히 공부했던 것 처럼, 파이썬에도 같은 식이라도 그 안에서 먼저 계산되는 순서가 있다는 것이다.

예를 들어보자,

result = 10 * 3 + 20

다음 결과 값은 50 이다.

왜냐면 * 곱하기 연산자가 먼저 수행되기 때문이다.

이와 같이 파이썬에는 연산자에 우선순위가 정해져있다.
다음은 연산자의 우선 순위대로 나열한 것이다.

  1. ( )
  2. *
  3. *, /, %
  4. +-

따라서 위 예시 코드에서 더하기 연산을 먼저 수행하고 싶다면 괄호를 사용하여 다음과 같이 만들어야한다.

result = 10 * (3 + 20)

Print & complex string concatenation

파이썬의 print 함수는 다양하게 활용이 가능하다.

다음은 Hello, world 를 출력하는 다양한 방법들의 예시이다.

print('Hello, world')
print('Hello,' + 'world')

name = 'hello'
print(name + 'world')

하지만 만약 복잡하고 긴 문자열안에 많은 변수들을 추가하려면 어떻게 해야할까?

물론 위의 방법으로도 충분히 가능하지만 변수를 추가할때마다 + 연산자를 쓰기는 매우 귀찮고 시간낭비이다.

지금 소개할 방법은 과거에 쓰였던 방법 및 최신 파이썬 버전에서의 방법 두가지이다.

  1. 구버전
name = input()
print(f"Hello, {name}")
  1. 신버전
name = input()
print("Hello, {}".format(name))

Indent

파이썬은 기본적으로 네칸 들여쓰기를 한다.

IDE 에서 Tab 키를 누르면 자동으로 네 칸 들여쓰기가 된다.

def blahblah():
	print("This statement starts here with 4 indents")
profile
Backend Developer

0개의 댓글