프로그래머스 알고리즘 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..
- ConversationCahin이 최신 langchain 버전에서는 지원하지 않아 대체 코드를 찾기 위해 공식 문서를 찾아보았다.- 공식 문서의 예제 코드를 이해하려고 하니 class개념이 부족해 개념을 먼저 학습하였다 : https://bravesol.tistory.com/181 - langchain 라이브러리 공식 문서 :https://python.langchain.com/v0.2/api_reference/core/runnables/langchain_core.runnables.history.RunnableWithMessageHistory.htmlfrom operator import itemgetterfrom typing import Listfrom langchain_openai.chat_model..
다른 프로젝트와 격리하고, 파이썬 및 라이브러리 특정 버전 사용을 위해 가상 환경을 생성하여 프로젝트를 진행하고자 한다. 1. 준비: anaconda3 설치 : https://www.anaconda.com/download/success- anaconda prompt 또는 vscode 터미널 창 준비 2. 생성(llm은 대신 다른 이름으로 저장 가능)conda create -n llm python=3.8 3. 확인conda env list4. (참고) 삭제conda env remove -n llm5. 실행activate llm 6. vs code에서 주피터 노트북 사용- 상단 바에서 검색 시 >입력 후 검색(예. >>python: Select Interpreter) 7. 해당 가상관경에 필요한 라이브러리 ..
1. 정의각 비트를 반전시키는 역할을 합니다. 즉, 0을 1로, 1을 0으로 바꾸는 연산 2. 계산방법예) ~51) 2진수로 변환 :5를 2진수로 변환하면 000001012) 비트반전 : 00000101 비트반전 → 111110103) 10진수로 변환: 11111010 비트반전+1 → 00000101 +1 = 00000111 →6이고, 1로 시작한 음수이므로 -6▶ 어차피 다시 반전해서 +1을하고, 마지막에 -부호를 달아주면 되기 때문에결과적으로는 (십진수+1) 후 부호반전을 해주면 된다. 3. 음수의 2진수 변환(2의 보수: two's complement )1) 양수의 이진수로 변환: 5를 8비트 이진수로 표현하면: 000001012) 00000101의 0과 1 반전: 111110103) 1을 더함..
학습내용예시[1] math 모듈 최대공약수 gcdimport math def solution(denum1, num1, denum2, num2): denum = denum1 * num2 + denum2 * num1 num = num1 * num2 gcd = math.gcd(denum, num) return [denum//gcd, num//gcd] print(solution(9,2,1,3)) # [29,6][2] dict의 value기준으로 내림차순color_dict = {'red':3, 'yellow':5, 'blue':1} color_sorted = sorted(color_dict.items(), key= lambda x: x[1], reverse = True) print(c..
[1] 예외처리 Exception Handling (1) 예외 Exception 1) 예상 가능한 예외- 발생 여부를 사전에 인지할 수 있는 예외- 사용자의 잘못된 입력, 파일 호출 시 파일 없음- 개발자가 반드시 명시적(if문, try~except문)으로 정의해야함 2) 예상 불가능한 예외- 인터프리터 과정에서 발생하는 예외, 개발자 실수- 리스트의 범위를 넘어가는 값 호출, 정수 0으로 나눔- 수행 불가시 인터프리터가 자동 호출 3) 예외 발생 시 후속조치- 없는 파일 호출 → 파일 없음을 알림- 게임 이상 종료 → 게임 정보 저장 (2) try ~ except 문법 : if문은 로직적인 문제, excpetion은 잘못된것(파일이 비었을때 등)을 처리할때 사용* try: 항상 실행되고, 예외를 ..
- Total
- Today
- Yesterday
- 운동
- 아침운동
- IH
- 뉴스
- 아침
- 오픽
- 오블완
- Ai
- 영어회화
- 프로그래머스
- 다이어트
- opic
- 루틴
- 기초
- llm
- 줄넘기
- Python
- C언어
- 스크랩
- 빅데이터 분석기사
- 실기
- 습관
- 경제
- 30분
- ChatGPT
- 미라클모닝
- 갓생
- 고득점 Kit
- 티스토리챌린지
- SQL
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |