[Python] 기초 문법 & 시퀀스

SIK407·2025년 12월 17일

Python & FastAPI

목록 보기
1/6
post-thumbnail

◽ 기본 문법

✔ 변수 선언

# 변수의 자료형을 정하지 않는다.
a = 1
type(a) # int
    
a = 3.14
type(a) # float

✔ I / O

input() # 입력
print() # 출력

✔ 연산

a = -3
    
abs(a) # 3 (절댓값)
divmod(8, 3) # (2, 2) -> 몫과 나머지가 동시에 튜플로 저장
    
3 ** 2 # 9 (제곱)
pow(3, 2) # 9 (제곱)
    
9 / 3    # 3.0 (float)
9 // 3   # 3 (int)
9.0 // 3 # 3.0 (float)
         # 소숫점을 버린 후, 정수타입으로 계산. 출력값은 3.0

✔ 부동소수점

소수점 위치가 “고정”이 아니라, “떠다닌다(이동한다)”.
12345.6을 1.23456 x 10⁴ 처럼 "유효숫자""지수"로 나눠서 저장하는 방식.

다만, 근사값으로 저장되는 경우가 많아서,

  • 0.1 * 0.1 ≠ 0.01
  • 0.1 * 0.1 = 0.0100000000000000003

이런식으로 비슷하게 저장되는 경우가 생긴다.
float 타입도 부동소수점의 특징인, "떠다닌다"에 유래해 float로 정해졌다고 한다.

✔ 동적 타입 언어

타입(자료형)이 동적으로 변하는 언어

a = 1로 초기화 후에, 다시 a = 1.1로 초기화가 가능하다.

Python은 동적 타입강타입 언어다.

Js같은 경우, 1 + "1"을 하면 "11"로 타입을 변환하여 계산되지만 (약타입),
Python은 에러가 발생하게 된다 (강타입). (암묵적 변환 지원 X)

✔ 인덱스 슬라이싱

a = [1, 2, 3, 4, 5, 6]

a[1:]  # 2 3 4 5 6
a[1:3] # 2 3
a[:3]  # 1 2 3

# 기본적으로 파이썬의 숫자 범위는 ~ 이상, ~ 미만이다.
for i in range (a, b) # a이상, b미만



◽ 시퀀스 자료형

✔ List [] (가변)

→ 다양한 자료형을 넣을 수 있음. 조건도 가능.
a = [1, 2, 3, 4, 5, 6]
a = [1, 1.1, "test"]
a = [1, [1, 2, 3]]
labels = ["짝수" if x % 2 == 0 else "홀수" for x in nums]
→ ‘+’를 하면 주소가 바뀌고, ‘+=’를 하면 주소가 바뀌지 않는다. 
    a = [1, 2, 3]
	b = [4, 5, 6]
    
	a += b
	id(a) == id(b) # True
    
	a = a + b
	id(a) == id(b) # False

Tuple () (불변)

→ 튜플과 리스트 간 변경 자유로움
→ 튜플 안에 가변 객체가 들어가 있으면 키(Key)로 사용 불가능
→ 초기화 시, 일부를 사용하지 않을 예정이면 언더바(_)로 대체
a = (1, 2, 3)
x, y, _ = a

Set() (가변)

→ 순서 X, 중복 X
→ 리스트와 다르게, add로 요소 추가 (리스트는 append)
→ Set과 List 변경이 자유로움 (단, List에서 Set으로 변경하면 중복 요소 제거)

Dict() (가변)

→ 키(Key), 값(value)로 짝지어짐
→ 키가 중복될 경우, 마지막 하나만 남음.
→ 키는 불변객체만 사용가능 (단, float는 지양)
profile
감자 그 자체

0개의 댓글