정수형양의 정수, 음의 정수, 0a = 777print(a) # 777 2. 실수형소수점 아래의 데이터를 포함하는 수 자료형e나 E를 이용한 지수 표현 방식 사용 가능IEEE754 표준에서는 실수형을 저장하기위해 4바이트 혹은 8바이트의 메모리를 할당하므로, 컴퓨터 시스템은 실수 정보를 표현하는 정확도에 한계를 가진다10진수 → 0.3 + 0.6 = 0.92진수 → 0.9와 최대한 가깝게 표현하지만, 미세한 오차 발생round를 이용해 특정 자리까지 반올림을 하는 것으로 문제 해결나머지(%), 몫 (//), 거듭제곱(**)3. 복소수형복소수: 실수와 허수로 이루어진 숫자z = a +bj(a는 실수부, b는 허수부, j는 허수 단위, i^2=-1)complexz1 = 3 + 4j # 실수부 3, 허수부 ..
1. Python이란?- 가독성이 좋고 생산성이 높은 언어- 간결한 문법 → 유지보수 용이- 방대한 라이브러리와 프레임워크를 제공 → 데이터 분석, 웹 개발, 머신러닝 등 다양한 분야에서 사용됨- 인터프리터 언어 특성상 속도 면에서는 C나 Java와 같은 컴파일 언어보다 느릴 수 있지만, 프로토타입 제작이나 빠른 개발 주기에 유용하다.* 인터프리터 언어란? 코드를 한 줄씩 해석하며 실행 2. 다른 언어와의 차이점PythonJavaJavascript인터프리터- 한줄씩 해석컴파일- 바이트코드 변환 → JVM실행하이브리드- 본질 인터프리터 + 최근 JIT동적 타이핑- 런타임에 타입 결정정적 타이핑- 타입 명시적 선언, 컴파일 타임에 타입 검사동적 타이핑- 런타임에 타입 결정가독성, 간결함엄격한 문법과 구조- ..
1. redis 연결import redis# Redis 클라이언트 생성r = redis.Redis(host='localhost', port=6379, db=0)# 연결 테스트print(r.ping()) # True가 출력되면 정상 연결 2. 문자열 데이터1) 저장: setr.set("mykey", "hello")2) 조회: get- get은 바이트 데이터를 반환해, decode("utf-8")로 문자열 변환value = r.get("mykey")print(value.decode("utf-8")) # hello3) 데이터 삭제: delr.delete("mykey")4) 만료 시간 설정: expirer.set("temp", "temporary")r.expire("temp", 10) # temp 키를 1..
Python 함수의 매개변수 개수를 동적으로 받을 때 사용하는 문법 1. *args 위치 인자- 여러 개의 위치 인자(positional arguments)를 받을 때 사용- 튜플 형태로 전달됨- 인자의 개수가 정해져 있지 않아, 여러 개를 받을 수 있다def add_numbers(*args): return sum(args) # args는 튜플로 저장됨print(add_numbers(1, 2, 3, 4)) # 10print(add_numbers(10, 20)) # 30 2. **kwargs 키워드 인자- 여러 개의 키워드 인자를 받을 때 사용- 딕셔너리 형태로 전달됨- 매개변수 이름과 값을 같이 넘길 수 있다- 함수 내부에서 kwargs.items()를 사용해 키-값 쌍을 처리할 수 있다def..
1. GIL이란?- Global Interpreter Lock- Python의 CPython 인터프리터에서 동시에 하나의 스레드만 실행될 수 있도록 제한하는메커니즘- 멀티스레드 환경에서도 한 번에 하나의 스레드만 Python 바이트 코드를 실행할 수 있다.- 따라서 멀티스레딩으로 처리하면 느려질 수 있다. 2. GIL이 왜 필요할까?- Python의 메모리 안전성을 유지하기 위해 존재- Python이 메모리 관리 시스템은 참조 카운트를 기반으로 한다- 여러 개의 스레드가 동시에 실행되면 참조 카운트 값을 수정하는 과정에서 Race Condition이 발생할 수 있는데, 이를 방지하기 위함이다* Race Condition 이란?- 두 개 이상의 스레드가 동시에 같은 자원(메모리, 파일, 변수 등)에 접근..
프로그래머스 알고리즘 KIT - 스택, 큐 1. 스택이란?- 하나씩 쌓아져 마지막에 들어온거부터 제거! (후입선출, LIFO, Last In First Out)↑ 쌓이는 순서 ↑ 33 → 2 → 1 순으로 제거2 1 ※ 리스트로 구현1) 마지막 요소 확인: 인덱싱 [-1]answer = [1,2,3]answer[-1] # 32) 빈 리스트의 마지막 요소 확인 answer = []answer[-1] # erroranswer[-1:] # []3) 마지막 요소 제거: pop(제거한 값을 반환)answer = [1,2,3]answer.pop() # 3answer.pop() # 2answer.pop() # 1answer.pop() # error 2. 큐란?- 먼저 추가된 데이터부터 제거, 선입 선출(FIFO..
1. setdefault- 딕셔너리에 새로운 key와 value를 추가할 때, if 로 해당 key가 있는지 확인하는 과정을 간소화 해줌- 해당 값이 없으면 지정한 default값을 반환, 있으면 원래 값을 반환clothes = [["yellow_hat", "headgear"], ["blue_sunglasses", "eyewear"], ["green_turban", "headgear"]]item_book = {}for item, ctg in clothes: item_book.setdefault(ctg,[]).append(item)item_book # {'headgear': ['yellow_hat', 'green_turban'], 'eyewear': ['blue_sunglasses']}2. setde..

1. streamlit과 fastapi 연결# 파일 구조fe_main.py # 터미널1에서 실행: streamlit run fe_main.pybe_main.py # 터미널2에서 실행: uvicorn be_main:app --reload1) fe_main.pyimport streamlit as stimport requestsst.title('안녕하세요😊 API 연습장 입니다!')st.write("오늘의 행운의 숫자를 확인해 보세요!")if st.button("행운의 숫자 조회하기"): response = requests.get(f"http://127.0.0.1:8000/number") if response.status_code == 200: rand_num = response.js..
- Total
- Today
- Yesterday
- 경제
- llm
- 스크랩
- 30분
- 티스토리챌린지
- Ai
- opic
- 오픽
- 고득점 Kit
- 뉴스
- 루틴
- 다이어트
- 운동
- 미라클모닝
- 아침
- IH
- 갓생
- SQL
- 습관
- 오블완
- 줄넘기
- 빅데이터 분석기사
- C언어
- 아침운동
- 프로그래머스
- 기초
- ChatGPT
- Python
- 실기
- 영어회화
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |