전체 글 33

파이썬 산술 연산 완전 정리 (초보자 필독)|연산자, 계산 순서, 타입, 실수 오차까지 한 번에

1 파이썬에서 계산이란 무엇인가?- 파이썬에서 계산은 동작이 아니라 평가- 계산이 일어나면 항상 계산 과정은 남지 않고 하나의 값이 만들어짐- 결과는 사용될 수도 있고, 사용되지 않을 수도 있지만 반드시 존재함2 모든 계산 결과는 '값'이다- 계산식은 실행되는 순간 값 하나로 바뀜- 파이썬은 계산식과 값을 구분하지 않아서 값이 필요한 자리에 계산식도 그대로 올 수 있음3 모든 값에는 반드시 타입이 있다- 파이썬의 값은 항상 데이터(실제 내용)와 타입(값의 성격)을 함께 가짐- 숫자도 예외 없이 타입을 가지며, 겉으로 같아 보여도 타입이 다를 수 있음- 파이썬은 모양이 아니라 타입으로 판단함4 숫자 자료형은 계산을 위해 존재한다- 계산을 하려면 계산 가능한 형태(int, float)의 값이 필요함- 숫자 ..

파이썬/연산자 2026.01.22

파이썬 타입 힌트(Type Hint) 완벽 정리 - 초보자가 꼭 알아야 할 핵심 개념부터 실전 사용 기준까지

1 타입 힌트란 무엇인가?- 이 변수나 함수에 어떤 종류의 값이 오기를 기대하는지 미리 적어두는 표시- 실행 규칙, 타입 강제, 오류 자동 발생이 없음- 실행 결과는 타입 힌트와 무관함- 사람과 IDE, 타입 검사 도구를 위한 설명서2 타입 힌트는 '설명'이다- '타입 힌트를 달면 자동으로 검사해 주겠지?'라고 많이 착각함- 파이썬 인터프리터는 타입 힌트를 완전히 무시하고, 타입 힌트는 실행 흐름을 바꾸지 않음- 타입 힌트의 진짜 역할은 코드의 의도를 설명하고, 자동 완성 정확도를 향상시키고, 실수를 사전에 경고함3 여러 타입을 허용해야 할 때1) Union1-1 코드value: int | str- 여러 타입 중 하나일 수 있음- 자동 변환과 자동 검사를 하지 않음2) Optional (= None을 포..

파이썬 동적 타이핑 완벽 정리 : 변수, 객체, 타입 흐름, 실수 사례, 해결법까지 한번에 이해하기

1 왜 동적 타이핑을 배워야 할까?→ 파이썬은 변수를 만들 때 타입을 미리 선언할 필요가 없음→ 그래서 처음엔 쉽고 편하지만, 실제 코드를 작성하다 보면 타입 변화 때문에 예측 못 한 오류가 자주 발생함→ 즉, 동적 타이핑을 배우는 목적은 개념 암기가 아니라 내부 동작 방식을 이해해 예측 가능한 코드를 작성하기 위함2 정적 타이핑 vs 동적 타이핑구분정적 타이핑동적 타이핑타입 확정 시점실행 전실행 중타입이 붙는 대상변수값(객체)변수 재사용타입이 고정됨어떤 타입이든 재할당 가능3 동적 타이핑의 핵심 원리→ 파이썬에서 타입은 변수에 붙지 않고 값(객체)에 붙음1-1 코드x = 10x = '10'x = 3.14→ 위의 코드는 x가 바뀐 것이 아니라, x가 가리키는 객체가 바뀌면서 타입이 함께 바뀌는 것4 변수..

파이썬 None 완벽 정리 - None vs 빈 값 차이, is 비교, 함수 반환까지 한 번에 끝내기

1 None을 왜 배워야 할까?→ 파이썬에는 '값이 있지만 비어 있는 상태'와 '값 자체가 없는 상태'가 존재함→ 0, '', [] 같은 값들은 비어 보이지만 실제 값이고, None은 '아직 값이 없다'라는 상태를 표현할 때 사용하는 것2 None의 정의와 타입 (NoneType)→ None은 값이 없는 상태를 표현하는 특별한 객체이며, 그 타입 이름은 NoneType→ 파이썬 전체 프로그램에서 단 하나만 존재하며, 실무에서는 NoneType을 직접 다루지 않고 그냥 None을 사용함1-1 코드print(type(None)) # 1-1 결과3 변수 초기화에서 None이 쓰이는 이유→ 변수는 필요하지만 값은 아직 준비되지 않았을 때 사용하며, 값이 들어오면 그대로 대입하면 됨2-1 코드item = Non..

파이썬 Boolean, 조건문 완전 정리 - True/False, 비교/논리 연산, in, None, 단축 평가까지 한 번에 이해하기

1 왜 Boolean과 조건 연산을 배워야 할까?→ 프로그램은 계산만 하는 것이 아니라 상황을 판단하고, 그 결과에 따라 행동을 선택해야 함→ 이 판단 결과는 항상 True(참) / False(거짓)→ 비교 연산자가 조건을 만들고, 논리 연산자가 조건을 조합해 실제 로직을 완성함2 Boolean(불리언 기초)→ 파이썬 Boolean 값은 True와 False뿐임→ true, false는 오류이므로, 반드시 대문자로 시작해야 함→ 'True'는 문자열이고, True는 Boolean으로 완전히 다름3 비교 연산자 - 두 값을 비교해 True/False 반환연산자의미==같다!=다르다>크다작다>=크거나 같다작거나 같다1-1 코드print(10 > 5)1-1 결과1-2 코드 : 체인 비교age = 15print(..

파이썬 문자열 완전정복 : split, join, replace, 정규표현식, 한글 깨짐, 디버깅까지 이것만 보면 끝!

1 문자열이란 무엇인가 - 진짜 핵심 이해→ 글자가 순서대로 나열된 데이터→ 파이썬에서는 문자열도 시퀀스 자료형이라서 인덱스와 슬라이싱이 가능함→ 문자열은 불변이기 때문에 수정되는 것처럼 보여도 새 문자열이 만들어짐2 문자열 다룰 때 가장 중요한 사고방식→ 먼저 전체 문자열을 관찰함→ 관찰한 후, 기준을 잡아서 split, 인덱스, 정규식 등으로 조각냄→ 조각난 조각에서 필요한 조각만 선택함→ 선택한 조각을 정리/변환/필터링함→ 새로운 문자열로 재조립함3 문자열 인덱싱 & 슬라이싱1) 인덱싱→ 특정 문자 1개를 가져옴→ 범위를 벗어나면 오류가 발생함→ 위치가 확실할 때 사용함2) 슬라이싱→ 특정 구간의 문자열을 가져옴→ 범위가 넘어가도 안전하며, 빈 문자열이 가능함→ 범위가 불확실할 때 사용함4 문자열 ..

파이썬 형변환 완벽 가이드 : 타입 확인, 숫자 변환, 예외 처리, 자주 하는 실수까지 한 번에 정리

1 왜 형변환을 알아야 할까?→ 문자열과 숫자를 잘못 섞으면 오류가 발생함→ 조건문은 내부적으로 bool 판단이 자동으로 수행됨→ 입력값(input)은 무조건 문자열(str)이므로, 숫자로 변환해야 계산이 가능함→ 여러 값(리스트/튜플/세트/딕셔너리)을 다루러면 컬렉션 간 변환 규칙이 필수2 타입 확인 기본기 - type(), isinstance()1) type()→ 정확히 '지금 이 값이 어떤 타입인지' 확인함1-1 코드print(type(10)) # print(type("hello")) # 2) isinstance()→ 상속 관계까지 고려해 타입을 판정함→ 가장 정확하고 실전적임→ 타입 비교는 무조건 isinstance() 사용을 습관화1-2 코드print(isinstance(True, in..

처음 배우는 파이썬 데이터 타입 완전 정복 - 7종 기본 타입부터 가변 vs 불변, 형 변환, 비교/연산 주의사항까지

1 왜 데이터 타입(Data Type)이 중요한가?→ 파이썬에서 다루는 모든 값(숫자, 글자, 참/거짓 등)은 각기 다른 성질과 행동 방식을 가짐→ 이런 성질을 구분하기 위한 기준이 바로 데이터 타입임→ 즉, 타입은 '이 값은 어떤 종류인가?', '이 값으로 어떤 연산이 가능한가?'를 알려주는 규칙표임→ 한마디로 요약하면 데이터 타입은 값의 '성격표'이자 '사용설명서'임2 타입의 개념과 원리1) 타입은 '값에 붙는다'→ 파이썬은 동적 타입 언어라서, 변수에 타입을 미리 정하지 않아도, 값이 들어올 때 자동으로 타입이 결정됨→ 변수는 단지 이름표일 뿐이며, 실제 타입은 값이 가짐1-1 코드data = 10print(type(data)) # data = 'Python'print(type(data)) # ..

파이썬 변수 완전정복 : 선언부터 재할당, 삭제, 실수까지 초보 100% 이해

1 변수란 무엇일까?→ 데이터를 저장하는 이름표(label)임→ 숫자, 문자, 리스트 등 다양한 값을 저장하고, 나중에 꺼내서 사용할 수 있음1-1 코드name = 'Alice'age = 20print(name, age) # Alice 20→ 즉, 변수는 '값을 담는 상자'라기보단 객체를 가리키는 이름표임2 변수 선언과 할당▼ 기본 문법변수이름 = 값→ 등호(=)는 '같다'가 아니라 '값을 저장한다(assign)'는 뜻임→ 왼쪽은 변수 이름, 오른쪽은 저장할 값임2-1 코드x = 10message = 'Hello'3 변수 이름 규칙과 네이밍 팁1) 기본 규칙→ 사용 가능한 문자는 알파벳, 숫자, 밑줄(_)임→ 숫자로 시작하거나 공백을 포함하는 것은 불가능함→ 대소문자를 구분함→ 예약어는 사용할 수 없음..

파이썬 한글 깨짐 완전 해결! 인코딩(UTF-8·CP949) 차이부터 오류 원인, 실습, 환경 설정까지 총정리

1 인코딩(Encoding)이란 무엇인가?1) 인코딩 개념→ 컴퓨터는 글자를 직접 이해하지 못하고 오직 0과 1(숫자)만 인식함→ 그래서 문서를 숫자로 바꾸는 규칙(번역기)인 인코딩이 필요함→ 반대로, 숫자를 문자로 되돌리는 과정이 디코딩(Decoding)임2) 쉽게 비유하자면→ 한글 편지를 영어 사전으로 해석하려 하면 엉뚱한 말이 나오는 것과 같음→ 즉, 저장(인코딩)과 읽기(디코딩)의 규칙이 달라지면 글자가 깨짐2 문자열(str)과 바이트(bytes) 차이1-1 코드text = '파이썬'encoded = text.encode('utf-8')print(text) # 파이썬print(encoded) # b'\xed\x8c\x8c\xec\x9d\xb4\xec\x8d\xac'pri..