반응형

분류 전체보기 502

파이썬 len 함수 총정리 : 자료형별 길이 정의, 시간 복잡도, 클래스 내 __len__ 구현

Python length 반환 함수(len) 설명 파이썬에서 특정 자료의 길이(혹은 원소의 개수)를 손쉽게 조회할 수 있는 len 함수에 대하여 자료형별 len 값의 구성 비교와 실행 시 시간 복잡도, 그리고 직접 구현한 클래스 내에서 len 함수를 사용할 수 있도록 만드는 방법에 대하여 살펴보도록 하겠습니다. 자료형별 len 값 구성 예시 len 함수는 기본적으로 해당 자료의 길이라고 대표할 수 있는 값을 반환합니다. 예를 들어, 리스트, 튜플, 집합에서는 포함하고 있는 원소의 개수를 길이로 정의하며, 딕셔너리에서는 key-value pair의 개수, 문자열에서는 구성된 문자의 개수로 정의합니다. # 리스트, 튜플, 집합 -> 원소의 개수 print(len([1, 2, 3])) # 3 print(len..

파이썬 텍스트(txt) 파일 읽기 방법 정리(for문, read, readline, readlines)

Python txt 파일 읽기 예제 파이썬에서 텍스트 파일을 읽어들이는 방법을 간결하게 정리해보도록 하겠습니다. 이해를 돕기 위하여 아래의 예시 파일인 example.txt를 읽는 상황을 가정해 보겠습니다. 또한, 해당 txt 파일의 디렉토리는 파이썬 파일과 같은 폴더에 위치하는 상황을 가정하겠습니다. 참고 : open vs with open 구문 비교 먼저, 파일을 다루는 두 가지 구문인 open 구문과 with open 구문의 차이를 비교하겠습니다. open 구문은 별도의 들여쓰기는 필요 없으나 파일 사용이 끝나면 close를 해주어야 합니다. 반면에 with open 구문은 close는 필요가 없으나 사용할 범위 내에서 들여쓰기가 필요합니다. 두 문법의 예시 포맷 코드는 아래와 같습니다.(open ..

파이썬 클래스에서 self가 붙어서 선언된 변수의 의미, 사용 이유

Python class self 역할, 일반 변수와 차이 파이썬에서 클래스 객체를 선언할 때, self를 이용하여 변수를 선언하는 경우가 많습니다. 혼동하기 쉬운 self 선언 변수의 의미와 일반 변수와의 차이를 간략히 살펴보겠습니다. self로 선언된 변수 예시 이해를 돕기 위하여, '공격력' 정보와 '체력' 정보를 가지는 Unit이라는 객체를 생각해보겠습니다. 클래스 선언부와 내부 함수인 my_info로 Unit이라는 클래스가 구성되었음을 가정하겠습니다. 선언부에서는 self를 이용하여 att과 hp 변수를 다시 선언하고 있습니다. class Unit: def __init__(self, hp, att = 0): # hp, att 변수를 input으로 받으면서 선언(att은 기본 값 0) # self ..

[Numpy] np.random.seed() 의미, random.seed()와 비교

넘파이 시드 설정 함수 설명, 내장 모듈의 시드 함수와 차이 파이썬 numpy 라이브러리의 seed 설정 방법과 의미를 살펴보고 내장 모듈인 random 내의 seed 함수와의 관련성과 차이에 대하여 다루어 보겠습니다. np.random.seed() 설정법, 의미 np.random.seed(음이 아닌 정수) 형태로 특정 숫자를 지정해주시면 seed 지정 이후에 난수 추출 시 고정된 값들이 출력되는 것을 확인할 수 있습니다. import numpy as np ### seed 미설정(완전 랜덤) ### print(np.random.random(5)) # [0.68535982 0.95339335 0.00394827 0.51219226 0.81262096] print(np.random.random(5)) # [..

Python/Numpy 2022.05.02

[C언어, C++] 주석 처리란? / 주석 달기 방법 정리(한 줄, 여러 줄, 단축키)

C/C++ 주석 의미, 예시 주석 처리의 정의와 용도를 살펴보고 C언어와 C++에서 주석 처리를 진행하는 방법을 정리해보도록 하겠습니다. 주석 처리란? 주석 처리된 부분은 실행할 코드 부분으로 인식되지 않는다는 점을 이용하여 코드의 설명을 달거나 디버깅 시 특정 코드 부분의 실행을 생략하고 싶을 때 사용합니다. 아래 예시 코드에서 아래 줄의 "주석 테스트"라는 메시지는 출력되지 않습니다. #include int main(){ int a = 6; // 이 코드는 a가 5보다 큰지를 비교하는 코드입니다. if(a > 5){ printf("a는 5보다 큽니다\n"); } // printf("주석 테스트\n"); } 한 줄 주석 처리법 : // 코드 한 줄에 주석 처리를 할때는 C언어와 C++ 모두 //를 이용..

C & C++ 2022.05.01

[C언어] if문 활용 조건문 사용법 예제 정리 (else if, else문, 중첩 조건문 등)

C언어 if, else if, else 케이스 비교 C언어에서 if, else if, else를 사용한 조건문의 사용법을 단일 조건의 가장 간단한 케이스부터 다중 조건의 복잡한 경우까지 정리해보며 각 경우의 차이를 이해해보도록 하겠습니다. if문 기본 케이스(단일 조건) C언어에서 if문은 if(조건){조건 만족 시 실행할 구문} 형태로 작성하게 됩니다. 들여쓰기는 필요 없으나, 조건은 소괄호 () 내에, 실행 구문은 중괄호 {} 내로 괄호 모양을 구분해서 사용해주셔야 합니다. 예시로, 아래 코드를 실행하면 a 10){ printf("a는 10보다 큽니다.\n"); } if(a > 5){ printf("a는 5보다 큽니다.\n"); } // if ~ else if의 경우 : 위의 printf만 실행 if..

C & C++ 2022.05.01

TypeError: 'tuple' object does not support item assignment / TypeError: unhashable type: 'list' 원인, 해결법

파이썬 튜플, 리스트 관련 TypeError 디버깅 파이썬 프로그래밍 중에 튜플, 리스트 자료형과 관련하여 발생가능한 대표적인 TypeError 두 가지에 대하여 원인과 대처법을 정리해보도록 하겠습니다. TypeError: 'tuple' object does not support item assignment 튜플로 선언된 자료에 인덱싱을 통한 값 추가, 수정 등을 시도할 경우 발생하는 오류입니다. t1 = (10, 20, 30) t1[0] = 15 # TypeError: 'tuple' object does not support item assignment 발생 해당 오류가 발생한 경우, 인덱싱을 시도하려했던 자료의 type을 검사하여 혹시 튜플 자료형이 아니었는지에 대하여 확인해보시면 됩니다. 해결법은 ..

Python/Debugging 2022.04.28

[Pandas] 파이썬 데이터프레임 특정 열 추출, 행 추출(1개, 여러 개)

파이썬 판다스 원하는 열/행 가져오기 방법 간단 정리 파이썬 pandas 모듈을 이용하여 데이터프레임에서 원하는 1개의 열/행을 가져오는 방법과 여러 개의 column/row들을 동시에 추출하는 법에 대해서 간략하게 정리해보겠습니다. 이해를 돕기 위하여, 아래의 데이터프레임이 df라는 변수에 저장된 상황을 가정하겠습니다. import pandas as pd a = {'A' : [1, 2, 3, 4, 5], 'B' : [10, 20, 30, 40, 50], 'C' : [100, 200, 300, 400, 500]} df = pd.DataFrame(a, index = ['가', '나', '다', '라', '마']) df 열 1개 추출하기 대괄호 [] 1개로 해당 column의 이름을 지정해주시면 Series..

Python/Pandas 2022.04.26

파이썬 join 함수 사용법 간단 정리

Python join 함수 사용 방법 요약 및 예제 파이썬에서 리스트 혹은 튜플 내의 문자열들을 이어 붙이는 역할을 수행하는 join 함수는 다음과 같은 문법으로 사용해주시면 됩니다. '구분자'.join(문자열로만 이루어진 리스트 or 튜플) output은 input으로 들어간 리스트 혹은 튜플 내의 문자열들이 구분자로 연결된 전체 길이의 문자열 1개가 반환됩니다. 대표적으로 많이 사용되는 구분자 5가지에 대하여 join 함수를 적용해본 예제는 아래와 같습니다. # input 자료형 : 리스트 or 튜플(단, 모든 원소는 문자열 자료형이어야 함) list_ex = ['가가', '나나', '다다', '라라', '마마'] tuple_ex = ('가가', '나나', '다다', '라라', '마마') # list..

[Pytorch] GPU 여부 확인, 사용할 GPU 번호 지정, 모델 및 텐서에 GPU 할당 방법

파이토치 GPU 체크, 지정 및 할당 방법 정리 파이토치에서 GPU 사용 가능 여부 및 연결된 GPU 정보를 확인해보고 특정 GPU만 사용하도록 설정하는 방법과 모델 및 텐서에 원하는 GPU를 할당할 수 있는 방법에 대하여 정리해보도록 하겠습니다. GPU 사용 가능 여부 확인 아래의 명령어의 결과가 True로 반환되면 GPU가 연결되어 사용 가능하다는 의미입니다. import torch # GPU 사용 가능 -> True, GPU 사용 불가 -> False print(torch.cuda.is_available()) 다음과 같이 코드를 작성하면 GPU 여부에 따라서 사용할 디바이스 종류 자동 지정이 가능합니다. # GPU 사용 가능 -> 가장 빠른 번호 GPU, GPU 사용 불가 -> CPU 자동 지정 예..

Python/Pytorch 2022.04.24
반응형