반응형

전체 글 435

[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로 설정하면 리스트를 동적으로 확..

[Python] 파이썬 딕셔너리에서 get() vs [] 차이점

안녕하세요. BlockDMask 입니다.오늘은 파이썬 딕셔너리에서 get() 메서드와 [](대괄호)를 이용한 직접 접근 방식의 차이점에 대해 알아보겠습니다.딕셔너리는 키-값 쌍을 저장하는 자료구조로, 데이터를 효율적으로 관리하는 데 유용합니다. 하지만 키를 조회할 때 get()과 []를 어떻게 사용할지 고민될 수 있습니다. 각각의 방식이 어떤 차이를 가지며, 언제 어떤 방식을 사용하면 좋은지 살펴보겠습니다. 1. 딕셔너리에서 get()과 []의 기본 차이점딕셔너리에서 값을 조회하는 대표적인 두 가지 방법은 get() 메서드를 사용하는 것과 [](대괄호)로 직접 접근하는 것입니다.data = {"name": "Alice", "age": 25}[] (대괄호)로 직접 접근print(data["name"]) ..

[Python] 파이썬에서 if __name__ == "__main__"의 의미와 사용법

안녕하세요. BlockDMask 입니다.오늘은 파이썬에서 자주 보이는 if __name__ == "__main__"의 의미와 활용법에 대해 알아보겠습니다.초보자들이 처음 보면 이해하기 어려울 수 있는 개념이지만, 알고 나면 코드의 실행 흐름을 명확하게 제어할 수 있습니다. 1. if __name__ == "__main__"이란?파이썬에서 if __name__ == "__main__"은 특정 스크립트가 직접 실행될 때만 코드가 실행되도록 하는 조건문입니다.쉽게 말해, 해당 스크립트가 독립적인 프로그램으로 실행될 때만 특정 코드 블록을 실행하도록 해주는 역할을 합니다. 2. 기본 사용법다음과 같은 파이썬 코드가 있다고 가정해보겠습니다.# example.pydef hello(): print("Hello,..

카테고리 없음 2025.03.15

[Visual Studio] 비주얼스튜디오 유용한 단축키 10개

안녕하세요. BlockDMask 입니다.오늘은 Visual Studio에서 개발 속도를 높여주는 유용한 단축키 10가지를 엄선하여 소개해드리겠습니다.1. 코드 정의로 이동 (F12 또는 Ctrl + 클릭)함수나 변수의 정의로 바로 이동할 수 있어, 코드 흐름을 빠르게 파악할 수 있습니다. 2. 이전/다음 위치로 이동 (Ctrl + - / Ctrl + Shift + -)코드 탐색 중 이전 또는 다음 위치로 돌아갈 때 유용합니다. 3. 코드 줄 이동 (Alt + 방향키 위/아래)현재 코드 줄을 위나 아래로 쉽게 이동할 수 있어 가독성을 높일 때 편리합니다. 4. 문자열 찾기 및 바꾸기 (Ctrl + F / Ctrl + H)파일 내 특정 문자열을 빠르게 찾거나, 일괄 변경할 때 필수적인 기능입니다. 5. 코드..

[Python] 파이썬 with open() 을 써야하는 이유

안녕하세요, BlockDMask입니다. 이전에 파이썬의 enumerate() 함수에 대해 다뤘는데요. 이번에는 파일을 다룰 때 유용한 파이썬의 with open() 구문에 대해 알아보겠습니다.   1. with open() 함수란?파이썬에서 파일을 열고 닫을 때 사용하는 open() 함수는 파일을 연 후 작업이 끝나면 반드시 close()를 호출해줘야 합니다. 하지만 이를 깜빡하거나 예외 상황이 발생하면 파일이 제대로 닫히지 않을 수 있습니다. 이러한 문제를 해결하기 위해 파이썬에서는 with open() 구문을 제공합니다. 이 구문을 사용하면 파일을 자동으로 닫아주어 코드의 안정성과 가독성을 높일 수 있습니다.  2. 기존 open() 사용 방식과 문제점일반적으로 파일을 열고 닫을 때는 다음과 같이 o..

[Python] 파이썬 enumerate() 함수로 인덱스와 값 동시에 가져오기

안녕하세요. BlockDMask입니다.오늘은 파이썬의 enumerate 함수에 대해서 알아보겠습니다. 1. 함수 소개enumerate() 함수는 파이썬에서 반복문을 사용할 때, 인덱스와 요소를 동시에 접근할 수 있도록 도와주는 함수입니다.기존의 for 반복문에서 range(len(리스트))를 사용하는 대신 enumerate()를 사용하면 코드가 훨씬 간결해지고 가독성이 좋아집니다.또한, enumerate()는 다양한 자료형에 적용할 수 있어 리스트뿐만 아니라 튜플, 문자열, 딕셔너리 등 여러 곳에서 사용됩니다. 반복 작업이 많을수록 enumerate()는 개발 시간을 단축하고 유지보수를 쉽게 만듭니다.   2. 파이썬 enumerate 사용방법문법enumerate(iterable, start=0)- it..

[Dart] 다트 Null Safety와 !, ?, ??, ??= 연산자

안녕하세요. BlockDMask입니다.오늘은 Dart 문법 중에서 Null Safety (널 세이프티)와 관련된 중요한 개념들을 소개해 보겠습니다.다양한 곳에서 많이 쓰이는 !, ?, ??, ??= 연산자에 대해 알아보고, 안전한 null 처리를 위한 기법들도 함께 살펴보겠습니다.오늘 포스팅을 보면, 더 안정적이고 신뢰할 수 있는 코드를 작성할 수 있습니다. Null Safety가 왜 중요한가?Dart의 널 세이프티는 코드의 안정성을 높이는 중요한 기술입니다. Null Safety를 통해 변수에 null 값이 들어가는 것을 방지하거나, null 값으로 인해 발생할 수 있는 오류(Null Pointer Exception)를 사전에 차단할 수 있습니다. 이는 앱의 크래시를 줄이고, 런타임 에러를 예방하여 더..

[Dart] 다트 확장 메서드(Extension Methods) - 클래스에 기능 추가

안녕하세요. BlockDMask입니다.우리가 개발을 하다 보면 기본 클래스(String, List, DateTime 등), 외부 라이브러리에 원하는 기능이 없어서 불편할 때가 있습니다. 이때 정말 유용하게 사용할 수 있는 확장 메서드에 대해서 소개해 보려 합니다. 1. 확장 메서드란?Dart의 확장 메서드(Extension Methods)는 기존 클래스의 코드를 변경하지 않고도 새로운 메서드를 추가할 수 있는 기능입니다.이 기능을 활용하면 외부 라이브러리의 클래스나 기본 제공 클래스(String, List 등)에도 원하는 기능을 쉽게 확장할 수 있습니다.(C#에서도 확장 메서드 문법을 사용할 수 있습니다.)   2. 기본 문법 설명확장 메서드는 extension과 on 키워드만 알면 됩니다.- exten..

[Dart] 다트 .. (캐스캐이드 연산자) 정리

안녕하세요. BlockDMask입니다.오늘은 Dart 문법 중에 신기하고 편리한 문법인 캐스캐이드 연산자(..)에 대해서 이야기해볼까 합니다.잘 쓰면 코드를 간결하고 가독성 좋게만들어 줄 수 있습니다.그럼, 오늘은 캐스캐이드 연산자가 무엇인지, 언제 사용하면 좋은지, 예제까지 함께 설명해보겠습니다. 1. 캐스캐이드 연산자(..)가 무엇인가?우리가 보통 객체를 만들고 나면, 여러 개의 메서드를 호출하거나 프로퍼티를 설정해야 할 때가 많습니다.하지만, 매번 객체 이름을 반복하는 것은 코드가 길어지고, 좀 귀찮습니다.예를 들어서 아래 코드를 한번 보겠습니다.아래 코드는 사람(Person) 객체의 이름과 나이를 설정한 후, 자기소개를 하는 코드입니다. 일반적인 객체 함수 호출 여기서 보면 "person."을 계..

[Unity] 유니티에서 ?.(널 조건부 연산자)가 제대로 동작하지 않는 이유

Unity에서 C#의 ?. (null 조건부 연산자)를 사용해서 코드를 간결하게 작성하려는 경우가 많습니다. 하지만 GameObject나 Component를 다룰 때 ?. 연산자가 예상대로 동작하지 않아 NullReferenceException이 발생하는 경우가 있습니다. 왜 이런일이 발생하는지, 그리고 이를 어떻게 해결할 수 있는지 살펴보겠습니다.1. ?.연산자가 동작하는 방식2. Unity의 GameObject가 다른 점.3. 결론  1. ?.연산자가 동작하는 방식?. 연산자는 Null 조건부 연산자라 불리며, 객체가 null이 아닐 경우에만 뒤따르는 메서드나 프로퍼티를 호출합니다.코드를 보면  위 코드를 얼핏 봤을 때 아래와 같은 해석이 가능합니다. bulletObject 게임 오브젝트가 null이..

[윈도우] cmd, 콘솔창에서 종료 재부팅 명령어

안녕하세요. BlockDMask 입니다. 오늘은 윈도우 cmd창, 윈도우 콘솔창에서 윈도우 재부팅, 종료 명령을 넣은 방법에 대해서 정리해보겠습니다. 보통은 윈도우 키를 눌러서 종료, 재부팅을 하는데 그걸 사용하지 못하는 경우, 몇초 후에 꺼지는 걸 원하는 경우에 사용합니다. - N 초 후에 꺼지는것을 원하거나, N초 후에 재부팅하는것이 필요할때 사용 - 원격 접속 PC, 보안 PC에 종료 재부팅 버튼이 없는 경우일때 유용하게 사용 1. 윈도우 콘솔창, cmd 창을 띄우는 방법 2. 윈도우 종료 재부팅 관련 cmd명령어 종류 3. 윈도우 종료 재부팅 관련 콘솔 명령어 한번에 사용 (명령어가 급한사람은 바로 3번으로) 1. 윈도우 콘솔, cmd 창을 띄우는 방법. 1-1) Window 키를 누르고 검색에 ..

[C#] out 매개변수 한정자 설명 및 예제 (out 키워드)

안녕하세요. BlockDMask입니다. 지난 시간에 ref 키워드 포스팅에서 call by value, call by reference에 대해서 배우고 in 키워드에 대해서도 배워봤습니다. 오늘은 C#에서 매개변수를 넘길 때 붙여줄 수 있는 out 키워드, out 매개변수 한정자에 대해서 알아보려고 합니다. 1. C# out 한정자 설명 2. C# out 키워드 예제 1. C# out 설명 매개변수 한정자란 어떤 함수가 있을 때 매개변수 앞에 붙이는 키워드를 매개변수 한정자라고 부릅니다. 매개변수에 특정한 기능, 역할을 붙여줄 때 사용하게 됩니다. 이 매개변수 한정자 중에 오늘 배울 것은 "out" 키워드입니다. 반환형 함수 이름 (out 데이터 타입 변수) void Func(out int num) vo..

<개인공부>/[C#] 2022.11.05

[C#] in 매개변수 한정자 설명 및 예제 (in 키워드)

안녕하세요. BlockDMask입니다. 지난 시간에 ref 포스팅에서 call by value, call by reference에 대해서 배웠었는데요. 오늘은 ref 키워드와 마찬가지로 call by reference로 호출해주는 C#의 키워드 중 in 키워드 = in 한정자 = in 매개변수 한정자에 대해서 알아보려 합니다. 1. C# in 한정자 설명 2. C# 매개변수 in 한정자 예제 1. C# in 매개변수 한정자 설명 *매개변수 한정자? 어떤 함수 void Func(int a)가 있을 때 매개변수 앞에 붙이는 키워드들을 매개변수 한정자라고 부릅니다. void Func([한정자] int a) 이런 식으로 데이터 타입 앞쪽에 위치하게 됩니다. 이 매개변수 한정자 중에 오늘 배울 것은 “in” 키워..

<개인공부>/[C#] 2022.10.29
반응형