Skip to content

Latest commit

 

History

History

P_01_BasicSyntax

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

README.md

🐍 Python 기초 문법

Python의 기본 문법, 데이터 타입, 연산자를 정리한 문서입니다.


1. 주석 (Comment)

# 한 줄 주석

# 자동 주석: 드래그 -> Ctrl + /

# 전체(블록) 주석
"""
여러 줄 주석
내용을 작성합니다
"""

2. 데이터 타입 (Data Types)

Python에서 모든 자료형은 **객체(Object)**이다.

2.1 기본 데이터 타입

타입 설명 예시
int 정수 10, -5, 0
float 실수 3.14, -0.5
str 문자열 "hello", 'python'
bool 불리언 True, False
None 없음 None

2.2 타입 확인 함수 - type()

type(10)        # <class 'int'>
type(3.14)      # <class 'float'>
type("hello")   # <class 'str'>
type(True)      # <class 'bool'>
type(None)      # <class 'NoneType'>

print(type(10)) # <class 'int'>

2.3 형 변환 함수 (Type Conversion)

# int() - 정수로 변환
print(int(3.14))      # 3
print(int("100"))     # 100

# float() - 실수로 변환
print(float(10))      # 10.0
print(float("3.14"))  # 3.14

# str() - 문자열로 변환
print(str(100))       # "100"

# bool() - 불리언으로 변환
bool(0)    # False (0은 False)
bool(1)    # True (0 이외의 숫자는 True)
bool("")   # False (빈 문자열은 False)
bool([])   # False (빈 리스트는 False)

2.4 형변환이 필요한 이유

⚠️ Python은 str과 int의 + 연산이 불가능하다!

age = 10

# 방법 1: 콤마로 구분 (공백 자동 추가)
print("제 나이는", age, "입니다.")  # 제 나이는 10 입니다

# 방법 2: + 연산자 (형변환 필요)
print("제 나이는 " + age + "입니다")      # ❌ TypeError!
print("제 나이는 " + str(age) + "입니다") # ✅ 제 나이는 10입니다

# 숫자 문자열을 정수로 변환
num = "100"
print(num + 2)       # ❌ TypeError!
print(int(num) + 2)  # ✅ 102

3. 문자열 (String)

3.1 문자열 리터럴 만드는 방법

# 1. 쌍따옴표 (double quotation)
print("Python is fun")

# 2. 홑따옴표 (single quotation)
print('Python is fun')

# 3. 쌍따옴표 3개 (여러 줄 문자열)
print("""Python
is fun""")

# 4. 홑따옴표 3개
print('''Python
is fun''')

3.2 줄 바꾸는 방법

# 1. 문자열 중간에 '\' 입력 (줄 연결)
print("Python \
is fun")

# 2. '+' 연산자 사용
print("Python "
      + "is fun")

# 3. ''' ~ ''' 또는 """ ~ """ 사용
print('''Python
is fun''')  # Enter키를 '\n'으로 인식

3.3 문자열 연산

# 문자열 곱셈 - 문자열을 n회 반복
print("파이썬" * 3)  # 파이썬파이썬파이썬

# 문자열 길이 (공백도 하나의 문자)
print(len("Hello Python"))  # 12

4. 연산자 (Operators)

4.1 산술 연산자

연산자 설명 예시 결과
+ 덧셈 5 + 3 8
- 뺄셈 5 - 3 2
* 곱셈 5 * 3 15
/ 나눗셈 (항상 float) 5 / 2 2.5
// 몫 (정수 나눗셈) 5 // 2 2
% 나머지 5 % 2 1
** 제곱 2 ** 3 8
# 나눗셈 결과는 항상 float
4 / 2      # 2.0

# 몫 연산자
4 // 2     # 2
4 // 2.0   # 2.0
3.4 // 1.1 # 3.0

4.2 비교 연산자

연산자 설명
>= 크거나 같다
<= 작거나 같다
> 크다
< 작다
== 같다
!= 같지 않다

⚠️ 주의: 실수 연산 결과는 정확하지 않음! 절대 == 비교 금지

5.0 == 5        # True
10 / 2 == 5     # True
2.1 + 0.2 == 2.3  # ❌ False! (2.1 + 0.2 = 2.300000000000003)

4.3 복합 대입 연산자

a = 10
a += 5   # a = a + 5  → 15
a -= 3   # a = a - 3  → 12
a *= 2   # a = a * 2  → 24
a //= 4  # a = a // 4 → 6

4.4 in 연산자 (포함 여부)

animals = ['dog', 'cat', 'bird', 'fish']
print("dog" in animals)    # True
print("shark" in animals)  # False
print("og" in "dog")       # True

4.5 is 연산자 (객체 동일성)

a = [1, 2, 3]
b = a
c = [1, 2, 3]

print(a is b)  # True (같은 객체)
print(a is c)  # False (다른 객체, 값만 같음)
print(a == c)  # True (값이 같음)

5. 들여쓰기 (Indentation)

Python은 들여쓰기로 코드 블록을 구분한다. 반드시 열을 맞춰야 함!

print(100)
    print(200)  # ❌ IndentationError!
print(300)

6. 숫자 처리 함수

6.1 내장 함수 (Built-in)

print(abs(-5))      # 5 (절댓값)
print(pow(4, 2))    # 16 (4의 2승)
print(max(5, 12))   # 12 (최댓값)
print(min(5, 12))   # 5 (최솟값)
print(round(3.14))  # 3 (반올림)
print(round(4.99))  # 5
print(round(3.1415, 2))  # 3.14 (소수점 2자리)

6.2 math 모듈 함수

from math import *

print(floor(4.99))  # 4 (내림)
print(ceil(3.14))   # 4 (올림)
print(sqrt(16))     # 4.0 (제곱근)
print(pi)           # 3.141592653589793

7. 조건식의 참/거짓 판정

타입 참 (True) 거짓 (False)
bool True False
int, float 0이 아닌 숫자 0, 0.0
str "abc" "" (빈 문자열)
list, tuple [1, 2], (1, 2) [], ()
dict {"key": "value"} {}
None - 무조건 거짓
if []:
    print("실행 안됨")  # 빈 리스트는 False

if [1, 2, 3]:
    print("실행됨!")    # 요소가 있으면 True