목록Python (215)
가오리의 코딩일기
→ nCr = n!/(n-r)!r! → 2의 지수 = n!의 2의 지수 - (n-r)!의 2의 지수 - r!의 2의 지수 → 5의 지수 = n!의 5의 지수 - (n-r)!의 5의 지수 - r!의 5의 지수 → 2의 지수와 5의 지수 중 작은 값을 고르면 된다 n, m = map(int, input().split()) def twoCount(n): result2 = 0 while n != 0: n = n//2 result2 += n return result2 def fiveCount(n): result5 = 0 while n != 0: n = n//5 result5 += n return result5 print(min(twoCount(n)-twoCount(n-m)-twoCount(m), fiveCount..
🧩 프로젝트 시작하기 → python3 —version : 파이썬 버전 확인 3.xx 이면 됨 → python3 -m venv myvenv : 가상환경 myvenv 생성 →source myvenv/bin/activate : myvenv 활성화 → pip install django~=3.2.10 : 장고 설치 → django-admin startproject myweb . : 프로젝트 만들기 ⇒ myweb 폴더, manage.py 파일 → python manage.py startapp photo: 앱 추가 → python manage.py runserver : 프로젝트 실행, 종료 시 control+C 🧩 프로젝트와 앱 → 프로젝트 : 어떤 하나의 큰 서비스, 우리가 만들 웹 사이트 → 앱 : 프로젝트 내..
https://school.programmers.co.kr/learn/courses/30/lessons/12919 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(seoul): for i in range(len(seoul)) : if seoul[i] == "Kim" : result = i # return('김서방은 ' + str(result) + '에 있다') return(f'김서방은 {result}에 있다')
💡 웹 개발 기초 개념 ✏️ 웹 개발이란 → 프론트엔드에서는 각종 기능들을 구현한다 → 데이터 처리에 대한 기능을 제외한 거의 대부분의 기능 → 사용자와 상호작용할 수 있는 다양한 기능들을 프론트엔드에서 구현한다 → 백엔드에서는 데이터 처리에 관한 모든 기능을 수행한다 → 데이터베이스와 연동되어 저장된 데이터를 찾아주거나 수정, 삭제할 수 있는 기능을 가진다 → 로그인/회원가입에 대한 요청을 받아 처리, 게시판에 글 작성, 내 피드에 글을 나타나게 하는 작업 등의 기능 → 프론트엔드가 백엔드에게 직접 데이터 요청, 요청받은 백엔드는 프론트엔드에게 해당 요청에 맞는 응답 → 응답 결과로는 프론트엔드가 필요로 했던 데이터나 에러 메시지 ✏️ 프론트엔드와 백엔드 → 프론트엔드 : 사용자가 접하고 경험하는, 웹..
🔗 파일위치 확인 더보기 💡 로그인을 위한 준비 🧩 POST 방식 → 회원가입에서는 새로운 유저를 추가하고 로그인에서는 아이디와 비밀번호 정보가 맞는지 확인해서 맞으면 로그인 시켜준다. → 회원가입과 로그인 모두 폼에서 사용자의 데이터를 받아오는 과정이 있는데 폼으로부터 데이터를 POST 방식으로 받아와야 한다. → 그래서 login.html과 signup.html의 Main Content에 있는 로 수정해준다. → 만약 두 곳 다 POST라면 생략하면 된다. 🔗 응답 상태 코드 더보기 → 응답 코드는 5개의 클래스(분류)로 구분된다. → 1XX : 정보, 요청을 받았으며 프로세스를 계속한다 → 2XX : 성공, 요청을 성공적으로 받았으며 인식했고 수용했다 → 3XX : 리다이렉션, 요청 완료를 위해 추..
startNumber, endNumber = map(int, input().split()) for i in range(startNumber, endNumber+1): if i
import sys numberList = [True] * 1000001 for i in range(2, int((1000000)**0.5)+1): if numberList[i]: for j in range(i*2, 1000000, i): numberList[j] = False while True: inputNumber = int(sys.stdin.readline()) if inputNumber == 0: break count = 0 for k in range(3, len(numberList)): if numberList[k] and numberList[inputNumber-k]: print(f'{inputNumber} = {k} + {inputNumber-k}') count = 1 break if co..
primeNumber = [] for i in range(2,123456*2+1): count = 0 for j in range(2, int(i**0.5)+1): if i%j ==0: count += 1 break if count ==0: primeNumber.append(i) while True: n = int(input()) result = 0 if n ==0: break for i in primeNumber: if n
from math import factorial n = int(input()) result = 0 for i in str(factorial(n))[::-1]: if i != '0': break result += 1 print(result)
✏️ 터미널에 가상환경 연결하기 더보기 → PyCharm이 아닌 VSC 사용중 → blog/__init__.py 생성 → python3 -m venv venv (가상환경 생성) → command+shift+p (파이썬 인터프리터 설정) → 터미널 시작? 부분에 (venv)가 없다면 control+shift+~ (새 터미널) 💡ORM 사용 예정 → Flask-SQLAlchemy, Flask-Login 설치 ✏️ ORM: Object-Relational Mapping → 데이터베이스에 데이터를 저장하는 테이블을 파이썬 클래스로 만들어 관리하는 기술로 이해해도 좋다 → 객체 지향적 코드로 인해 더 직관적이고 비즈니스 로직에 집중할 수 있도록 도와준다 → 재사용 및 유지보수의 편리성이 증가하고 DBMS에 대한 ..