[파이썬 기초] 함수 정의와 인자 (*args, **kwargs)
·
BI&Programming-Tools/Python
함수 정의함수는 def 키워드로 정의합니다.반복적으로 사용하는 코드를 묶어두면 재사용성이 높아지고 코드를 이해하기 쉬워집니다.def 함수이름(매개변수): # 실행할 코드 return 반환값 def calc_gc(seq): g = seq.count("G") c = seq.count("C") return (g + c) / len(seq)result = calc_gc("ATCGATCGGGCC")print(result) # 0.5833... return이 없거나 return만 단독으로 사용하면 None을 반환합니다.def print_info(sample_id): print(f"Processing: {sample_id}") # return 없음 → None 반환resul..
[파이썬 기초] 람다 함수와 내장 함수, collections 모듈
·
BI&Programming-Tools/Python
람다 함수 (lambda)람다 함수는 이름 없이 한 줄로 정의하는 익명 함수입니다.간단한 연산을 함수로 전달해야 할 때 사용합니다.# 기본 형태lambda 매개변수: 표현식# 일반 함수와 비교def square(x): return x ** 2square_lambda = lambda x: x ** 2print(square(5)) # 25print(square_lambda(5)) # 25 람다 함수는 표현식 하나만 가질 수 있으며, return을 명시하지 않아도 결과를 반환합니다.여러 줄의 로직이 필요하다면 일반 함수를 사용하는 것이 적합합니다.정렬 기준으로 활용람다의 가장 실용적인 사용처는 sort()나 sorted()의 key 인자입니다.samples = [("sample_03", ..
[파이썬 기초] 반복문 (while, for, comprehension)
·
BI&Programming-Tools/Python
while 문조건이 True인 동안 반복 실행합니다.반복 횟수가 정해지지 않고 특정 조건이 충족될 때까지 반복해야 할 때 사용합니다.count = 0while count break와 continue# break: 반복문 즉시 종료count = 0while True: if count >= 5: break print(count) count += 1# continue: 현재 반복을 건너뛰고 다음 반복으로count = 0while count while True는 무한 루프를 만들며, 반드시 내부에 break 조건이 있어야 합니다.조건 없이 사용하면 프로그램이 종료되지 않습니다.while elsewhile 문에 else를 붙이면 break 없이 조건이 False가 되어 정상 종료될 ..
[파이썬 기초] 조건문과 연산자
·
BI&Programming-Tools/Python
연산자비교 연산자두 값을 비교해서 True 또는 False를 반환합니다.연산자의미예시==같다3 == 3 → True!=같지 않다3 != 5 → True>크다5 > 3 → True작다3 >=크거나 같다5 >= 5 → True작거나 같다3 coverage = 30.5print(coverage >= 20) # Trueprint(coverage == 30) # Falseprint(coverage != 30) # True 파이썬에서는 비교 연산자를 연속으로 연결할 수 있습니다.q_score = 25print(20 논리 연산자연산자의미and두 조건 모두 참일 때 Trueor하나라도 참이면 Truenot참/거짓 반전coverage = 30.5q_score = 25print(coverage >= ..
[파이썬 기초] print / input / 주석
·
BI&Programming-Tools/Python
printprint()는 값을 터미널에 출력하는 함수입니다.가장 기본적인 출력 수단이며, 디버깅 시에도 자주 사용합니다.기본 사용법print("Hello, World!") # Hello, World!print(42) # 42print(3.14) # 3.14print(True) # Trueprint([1, 2, 3]) # [1, 2, 3]여러 값을 한꺼번에 출력할 수 있으며, 기본적으로 값 사이에 공백이 들어갑니다.sample = "sample_01"count = 15000000print(sample, count) # sample_01 15000..
[파이썬 기초] 딕셔너리, 셋, 불리언
·
BI&Programming-Tools/Python
딕셔너리 (dict)딕셔너리는 키(key)와 값(value)의 쌍으로 데이터를 저장하는 자료형입니다.키를 통해 값에 빠르게 접근할 수 있으며, 순서가 있는 가변 자료형입니다.sample_info = { "id": "sample_01", "species": "Homo sapiens", "read_count": 15000000, "paired": True}empty = {} # 빈 딕셔너리키는 문자열, 숫자, 튜플처럼 불변 자료형만 사용할 수 있습니다. 리스트는 키로 사용할 수 없습니다.값 접근 및 수정# 값 접근print(sample_info["id"]) # sample_01print(sample_info.get("tissue")) ..
[파이썬 기초] 리스트와 튜플
·
BI&Programming-Tools/Python
리스트와 튜플은 모두 순서가 있는 데이터 컬렉션입니다.앞선 자료형 개요 글에서 개념을 간략히 다뤘으며, 이번 글에서는 실제 사용 방법을 더 구체적으로 정리합니다.리스트 (list)리스트는 가변(mutable) 자료형으로, 생성 후에도 요소를 추가, 수정, 삭제할 수 있습니다.대괄호([])로 생성합니다.samples = ["sample_01", "sample_02", "sample_03"]counts = [150, 230, 95, 410]mixed = [1, "ATCG", True, 3.14] # 여러 타입 혼합 가능empty = [] # 빈 리스트인덱싱과 슬라이싱seq_list = ["A", "T", "C", "G", "A", "T"]# 인덱싱print(..
[파이썬 기초] 숫자와 문자열 다루기
·
BI&Programming-Tools/Python
숫자 다루기기본 연산자a, b = 10, 3print(a + b) # 13 (덧셈)print(a - b) # 7 (뺄셈)print(a * b) # 30 (곱셈)print(a / b) # 3.333... (나눗셈, 항상 float 반환)print(a // b) # 3 (정수 나눗셈, 몫)print(a % b) # 1 (나머지)print(a ** b) # 1000 (거듭제곱)복합 대입 연산자count = 100count += 10 # count = count + 10count -= 5 # count = count - 5count *= 2 # count = count * 2count //= 3 # count = count // 3숫자 관련 내장 ..
[파이썬 기초] 변수, 동적 타이핑, 자료형 개요
·
BI&Programming-Tools/Python
변수변수는 데이터를 저장하는 이름이 붙은 공간입니다.파이썬에서는 변수를 선언할 때 타입을 명시하지 않고 바로 값을 할당합니다.name = "sample_01"count = 100ratio = 0.85is_valid = True 변수 이름은 다음 규칙을 따릅니다.문자, 숫자, 언더스코어(_)로 구성숫자로 시작할 수 없음대소문자를 구분 (count와 Count는 다른 변수)파이썬 예약어(if, for, True 등)는 변수명으로 사용 불가파이썬 관례상 변수명은 소문자와 언더스코어를 조합한 스네이크 케이스(snake_case)를 사용합니다.# 권장sample_count = 10file_path = "/data/sample.fastq"# 비권장sampleCount = 10 # 카멜 케이스 (클래스명에 사..
[파이썬 기초] 가상환경과 pip 패키지 관리
·
BI&Programming-Tools/Python
파이썬 프로젝트를 진행하다 보면 프로젝트마다 필요한 패키지와 버전이 달라지는 경우가 생깁니다.가상환경은 이런 충돌을 방지하기 위해 프로젝트별로 독립된 파이썬 실행 환경을 만드는 방법입니다.앞선 환경 세팅 글에서 개념은 간략하게 다뤘으므로, 이번 글에서는 실제 사용 흐름과 패키지 관리를 더 구체적으로 정리합니다.왜 가상환경이 필요한가파이썬 패키지를 가상환경 없이 설치하면 시스템 전역에 설치됩니다.이 경우 다음과 같은 문제가 생길 수 있습니다.프로젝트 A는 numpy 1.23을 요구하고, 프로젝트 B는 numpy 1.26을 요구할 때 하나의 버전만 설치할 수 있어 충돌이 발생합니다.분석 도구마다 요구하는 파이썬 버전이 다른 경우에도 같은 문제가 생깁니다.시스템 전역 파이썬 환경을 잘못 건드리면 운영체제 기능..
[파이썬 기초] 파이썬을 쓰는 이유와 환경 세팅
·
BI&Programming-Tools/Python
파이썬을 쓰는 이유파이썬은 생물정보학, 데이터 분석, 머신러닝 분야에서 사실상 표준 언어로 자리 잡았습니다. 그 이유는 몇 가지로 정리할 수 있습니다.풍부한 라이브러리 생태계데이터 분석에 필요한 대부분의 기능이 라이브러리로 이미 구현되어 있습니다. NumPy, pandas, matplotlib 같은 범용 데이터 분석 도구부터 Biopython, pysam, scikit-bio 같은 생물정보학 전용 라이브러리까지 폭넓게 제공됩니다. 머신러닝과 딥러닝 분야에서도 scikit-learn, TensorFlow, PyTorch 모두 파이썬을 기본 언어로 사용합니다.간결한 문법다른 언어에 비해 문법이 단순하고 가독성이 높습니다. 복잡한 데이터 처리 로직도 비교적 짧은 코드로 표현할 수 있어 분석 작업에 집중하기 좋..