반응형

전체보기 427

[Python] 파이썬에서 None, null, is None 차이 정리

안녕하세요. BlockDMask 입니다.오늘은 파이썬에서 자주 혼동되는 값들,즉 None, null, 빈 문자열(""), 0, False, [], {}그리고 비교 연산자인 is, ==에 대해 정리해보겠습니다.특히 초보자들이 None과 빈 값들, 그리고 is None vs == None 차이를 헷갈려 하는 경우가 많습니다.하나씩 정확하게 예제로 짚어보겠습니다.1. 파이썬의 null은 Nonea = Noneprint(a) # None설명: 파이썬에서는 null 대신 None을 사용합니다. 아무 값도 없다는 의미의 객체입니다.2. None, 0, "", [], {} 차이점값의미참/거짓 평가타입None값이 없음FalseNoneType0숫자 0Falseint""빈 문자열Falsestr[]빈 리스트Falselis..

[Python] 파이썬 range()의 숨겨진 기능들

안녕하세요. BlockDMask 입니다.오늘은 파이썬에서 반복문과 함께 자주 쓰이는 range() 함수의 숨겨진 기능들을 소개하겠습니다.보통은 단순히 숫자를 반복할 때 쓰지만,step을 음수로 주거나, reversed(), len() 없이 슬라이스처럼 다루는 등알아두면 실전에서 유용한 기능들이 꽤 많습니다.1. 기본적인 range() 사용법for i in range(5): print(i)출력:01234기본적으로 0부터 시작하며, 끝 숫자는 포함하지 않습니다.문법: range(start, stop, step)2. 시작 값과 step 지정for i in range(1, 6, 2): print(i)출력:1351부터 시작해서 2씩 증가하며 6 미만까지 반복합니다.3. step을 음수로 주기 (역순 반..

[Python] 파이썬 클래스 변수 vs 인스턴스 변수 차이

안녕하세요. BlockDMask 입니다.오늘은 파이썬 클래스에서 자주 혼동되는 클래스 변수(class variable)와 인스턴스 변수(instance variable)의 차이점에 대해 알아보겠습니다.두 개념은 비슷해 보이지만 동작 방식이 다르기 때문에,특히 초보자일수록 실수하기 쉬운 부분입니다.실제 예제와 함께 명확히 비교해보겠습니다.1. 인스턴스 변수란?객체(인스턴스)가 생성될 때마다 따로 생성되는 변수입니다.보통 self.변수명 형태로 선언합니다.class User: def __init__(self, name): self.name = name # 인스턴스 변수u1 = User("BlockDMask")u2 = User("Alice")print(u1.name) # BlockDMas..

[Python] 파이썬 클래스 초보자 가이드 (__init__, self)

안녕하세요. BlockDMask 입니다.오늘은 파이썬의 클래스(class)와 그 안에서 자주 쓰이는 __init__, self 키워드에 대해 알아보겠습니다.클래스는 객체지향 프로그래밍의 핵심이며,처음 파이썬을 배우는 분들에게는 살짝 낯설 수 있지만,한 번 익히면 코드를 더 구조적으로 짤 수 있게 됩니다.1. 클래스란?간단히 말해서, 클래스는 설계도이고, 객체는 실제 만들어진 물건입니다.예를 들어, 사람이라는 클래스를 만들면,이 클래스는 이름(name), 나이(age) 같은 속성(변수)과 인사하기 같은 동작(함수)을 가질 수 있습니다.2. 가장 기본적인 클래스 예제class Person: def say_hello(self): print("안녕하세요!") p = Person()..

[Python] 파이썬에서 날짜 다루기 (datetime 기본부터 실전까지)

안녕하세요. BlockDMask 입니다.오늘은 파이썬에서 날짜와 시간을 다룰 수 있는 내장 모듈인 datetime에 대해 알아보겠습니다.현재 날짜를 가져오는 법부터 날짜 덧셈, 차이 계산, 포맷 변경, 문자열 변환 등실제 프로젝트에서 자주 쓰이는 예제 중심으로 하나하나 정리해볼게요.1. datetime 모듈 불러오기import datetime또는 아래처럼 필요한 것만 불러올 수도 있어요:from datetime import datetime, timedelta2. 현재 날짜 및 시간 가져오기from datetime import datetimenow = datetime.now()print(now)출력 예:2025-03-22 14:25:37.4567893. 오늘 날짜만 가져오기 (date.today())fro..

[Python] 파이썬 리스트 컴프리헨션 vs for문

안녕하세요. BlockDMask 입니다.오늘은 파이썬에서 리스트를 만들 때 자주 사용되는 리스트 컴프리헨션(List Comprehension)과 기존의 for문 방식의 차이점에 대해 알아보겠습니다.속도, 코드 길이, 가독성 면에서 어떤 차이가 있는지 비교하면서 실전 예제도 함께 살펴보겠습니다.1. 리스트 컴프리헨션이란?리스트 컴프리헨션은 기존의 for문을 한 줄로 간단하게 표현하는 방식입니다.코드를 더 짧고 간결하게 만들 수 있고, 파이썬답게 코딩할 수 있게 도와줍니다.기본 문법:[표현식 for 변수 in 반복가능한객체]예를 들어 1부터 5까지의 제곱을 담은 리스트를 만들고 싶을 때, 일반 for문 방식:squares = []for i in range(1, 6): squares.append(i **..

[Python] 파이썬 *args와 **kwargs 알아보기

안녕하세요. BlockDMask 입니다.오늘은 파이썬 함수에서 자주 보이는 *args와 **kwargs에 대해 알아보겠습니다.처음에는 생소할 수 있지만, 함수의 인자를 유연하게 받을 수 있게 해주는 아주 유용한 문법입니다.실전에서 많이 쓰이므로 제대로 알아두면 코드가 훨씬 깔끔해집니다!1. *args란?*args는 가변 위치 인자라고 합니다.함수에 몇 개의 인자가 올지 모를 때, 여러 개의 인자를 튜플로 받아줍니다.def print_args(*args): for arg in args: print(arg)print_args('BlockDMask', 'Python', 123)결과:BlockDMaskPython123- *args는 전달된 인자들을 튜플로 묶어줍니다.- 인자의 개수에 상관없이 ..

[Python] 파이썬에서 파일 경로 다루기 (`os` vs `pathlib`)

안녕하세요. BlockDMask 입니다.오늘은 파이썬에서 파일 경로를 다룰 때 사용하는 두 가지 주요 모듈, os와 pathlib에 대해 알아보겠습니다.파일을 다룰 때 경로를 조작하는 일은 자주 발생합니다. 예를 들어, 특정 폴더 내의 파일을 검색하거나, 경로를 조합하는 등의 작업이 필요할 수 있습니다.이때 os 모듈과 pathlib 모듈을 어떻게 활용하면 좋을지 비교해보겠습니다.  1. os 모듈을 사용한 파일 경로 처리os 모듈은 전통적으로 파일 및 디렉토리 작업을 처리하는 데 사용됩니다.특히 os.path 하위 모듈을 활용하면 경로를 조작할 수 있습니다. 경로 합치기 (os.path.join)import osfolder = "C:\\Users\\BlockDMask"file_name = "exampl..

[Python] 파이썬 zip() 함수 활용법

안녕하세요. BlockDMask 입니다.오늘은 파이썬에서 리스트, 튜플 등의 자료형을 효율적으로 묶어주는 zip() 함수에 대해 알아보겠습니다.zip() 함수는 여러 개의 이터러블(iterable)을 하나의 튜플로 묶어주는 기능을 합니다. 이 함수는 데이터 리스트를 병렬 처리할 때 매우 유용합니다. 1. zip() 함수란?zip() 함수는 여러 개의 리스트, 튜플 등을 인덱스별로 묶어 튜플 형태로 반환하는 함수입니다.zip(iterable1, iterable2, ...) zip() 기본 사용 예제names = ["Alice", "Bob", "Charlie"]ages = [25, 30, 35]zipped = zip(names, ages)print(list(zipped)) # [('Alice', 25), ..

[Flutter] 플러터 List.generate 알아보기

안녕하세요. BlockDMask 입니다. 오늘은 플러터에서 리스트를 생성할 때 유용한 List.generate 함수에 대해 알아보겠습니다. 1. List.generate란?List.generate는 Dart에서 제공하는 기능으로, 특정 개수의 리스트를 빠르게 생성할 때 사용됩니다. 이 함수는 반복적으로 특정 규칙을 적용하여 리스트의 각 요소를 초기화할 수 있도록 도와줍니다.List List.generate( int length, T Function(int index) generator, {bool growable = false})length: 생성할 리스트의 길이generator: 각 인덱스에 대한 값을 생성하는 함수growable: 기본값은 false이며, true로 설정하면 리스트를 동적으로 확..

반응형