일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 가상환경
- Join
- String Method
- 백준
- Matplotlib
- MySQL
- 데이터시각화
- 파이썬
- openCV
- 선그래프
- programmers
- python
- 자료구조
- type hint
- 알고리즘스터디
- 프로그래머스
- 노마드코딩
- 알고리즘
- pandas
- javascript
- Algorithm
- 알고리즘 스터디
- NumPy
- dataframe
- Stack
- 정보처리기사 c언어
- queue
- aws jupyter notebook
- 코딩테스트
- Selenium
- Today
- Total
목록python (67)
조금씩 꾸준히 완성을 향해
▶ 문제 N개의 수로 이루어진 수열 A[1], A[2], …, A[N] 이 있다. 이 수열의 i번째 수부터 j번째 수까지의 합이 M이 되는 경우의 수를 구하시오. ▶ 입력 설명 첫째 줄에 N(1≤N≤10,000), M(1≤M≤300,000,000)이 주어진다. 다음 줄에는 A[1], A[2], …, A[N]이 공백으로 분리되어 주어진다. 각각의 A[x]는 30,000을 넘지 않는 자연수이다. ▶ 출력 설명 첫째 줄에 경우의 수를 출력한다 ▶ 입력 8 3 1 2 1 3 1 1 1 2 ▶ 출력 5 ▷ 내가 짠 코드 import sys sys.stdin=open("input.txt", "r") n, m = map(int,input().split()) a = list(map(int, input().split()..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bwf9X7/btrLTUTGh9B/iK5rnKpkV48yvHXDiAsSSK/img.jpg)
decorator 는 함수, 메서드 또는 클래스 정의를 수정하는 데 사용되는 호출가능한 Python 객체이다. 일정 코드가 지속적으로 반복해서 등장하는 것을 함수화하여 축약하고자 등장한 파이썬의 기능이라고 생각하면 이해하기 쉽다. 예시를 통해 사용법을 알아보자. 먼저 이렇게 각기 다른 명언이 담긴 4개의 함수가 있다. def quote_1(): print("I'm as proud of what we don't do as I am of what we do.") def quote_2(): print("The journey is the reward.") def quote_3(): print("Innovation distinguishes between a leader and a follower.") def qu..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dVD60G/btrLNqe7U5q/6kMm1eTXFJk4qAMSI1HQKk/img.jpg)
▶ pip 설치 $ sudo easy_install pip ▶ pip 버전 확인 $ pip --version ▶ pip 업그레이드 $ pip install pip --upgrade ▶ 패키지 설치 $ pip install 패키지 ▶ 특정 버전 패키지 설치 $ pip install "패키지~=3.0.0 ▶ 설치된 패키지 확인 $ pip freeze ▶ 설치된 패키지 정보를 requirements.txt 파일로 출력 $ pip freeze > requirements.txt ▶ requirements.txt 파일에 있는 모든 패키지를 설치 $ pip install -r requirements.txt
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/GPxcH/btrLVZmIK5h/EGBKKF5xI58dtITsJMrIi0/img.jpg)
venv 모듈은 파이썬 3.3 부터 내장되어 있는 가상 환경 구성 패키지이다. 별도 패키지 설치없이 파이썬만 설치되어 있으면 사용 가능하기 때문에 쉽고 간단하게 가상환경을 구축할 수 있다. ▶ 가상환경 생성 $ python -m venv .venv .venv 라는 이름으로 환경변수를 생성한다. 이름은 다양하게 지정할 수 있지만 관행적으로 .venv를 많이 쓴다. ▶ 가상환경 활성화 생성된 가상환경 안에서 작업을 하기 위해서는 활성화를 해주어야 한다. 1. 활성화 명령어 (window10) $ .venv\scripts\activate 가상환경이 활성화 되면 이렇게 파일 경로 앞에 가상환경 이름이 붙은 것을 볼 수 있다. 2. interpreter 선택 F1키 또는 "ctrl + shift + p"를 눌러 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/EZMZH/btrLLYDi7ih/ByC8jJqeva2zJbI0neJe30/img.jpg)
가상환경이란 한 컴퓨터에서 여러 프로젝트를 작업할 때 파이썬 패키지의 의존성이 충돌하지 않도록 관리해주는 툴이다. 가상환경을 생성하면 환경변수 그룹이 만들어지고 그룹마다 지정된 경로에 패키지를 설치하고 사용할 수 있게 된다. 여러 프로젝트를 개발할 때 가상환경을 사용하면 패키지 버전 관리가 용이해진다. 기본적으로 아나콘다를 설치하게 되면 "base"라는 가상 환경이 자동적으로 생성되고 아나콘다에 접속할 때마다 해당 가상환경(base)으로 먼저 들어가게 된다. 하지만 각각 다른 가상환경에서 작업을 진행하기 위해서는 가상환경을 생성하고 제거하는 과정이 필요하다. ▶ anaconda promt 실행 후 최신 버전으로 업데이트 $ conda update conda ▶ 가상환경 만들기 $ conda create ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/b3yjTM/btrLLXivdMG/000ziqApb8INvlgPoK2BcK/img.jpg)
디자인이 엄청 간지나는 파이썬 스터디 수료증을 받았다ㅎㅎ 처음 발견했을 때는 좀 낯선 교육기관이라고 생각했는데, 이제 막 활발해 지기 시작하는 상태인 것 같다. https://mcode.co.kr/ 메타코드M 무료 데이터/코딩 온라인 교육 플랫폼 SKY + 대기업 현직자분들이 무료로 강의를 진행해주시고, 수료증까지 발급 가능한 플랫폼입니다. mcode.co.kr 파이썬을 새로 시작하고 주위에 정보나 조언들이 부족해서 좀 막막한 와중에 참 유용한 커뮤니티를 발견한 것 같다. 데이터사이언스, AI 쪽을 전문으로 하는 기관이며, 관련 전공 석박사들이 포진해 있다. 내가 들은 강의는 메타코드M 유튜브에 올라와 있는 파이썬 기초 4시간짜리 강의이다. 사실 강의가 뭐 그렇게 특별나거나 대단하지는 않았고, 배웠던 문..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/t3Q89/btrLHkMC2E4/NDW7rLsiqyUCBXJuJuHmWK/img.jpg)
새로운 강의를 들으려고 VScode를 켜고 막 파일을 만드는 중에 알 수 없는 에러와 맞닥들이게 되었다. 이렇게 한글 깨짐현상이 일어난 것이다. 안 이러던 애가 왜 이러는 건지 너무 당황했다. 검색을 해서 찾아낸 해결법을 하나하나 해보았다. ▶ 인코딩 변경 가장 많이 보이는 해결책은 인코딩을 바꾸라는 것이었다. 하단에 UTF-8 을 EUC-KR 로 변경해서 한국어를 읽을 수 있게끔 설정하는 방법이다. 그런데 UTF-8 자체가 이미 한국어를 지원하는 걸로 알고 있는데 바꾸면 더 복잡한 문제가 생기는 건 아닌지 걱정이 좀 되었다. 여태껏 한글을 포함한 모든 작업을 다 UTF-8로 해왔기 때문이다. 바꿈으로 인해서 또다른 에러가 발생했다. 일단 다시 UTF-8로 변경 후 다른 방법을 찾았다. ▶ setting..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bnQDvo/btrLAyQzT3Q/Ykhvbao69TrGCTsW5WBdtK/img.jpg)
▶ 문제 1부터 20까지 숫자가 하나씩 쓰인 20장의 카드가 아래 그림과 같이 오름차순으로 한 줄로 놓 여있다. 각 카드의 위치는 카드 위에 적힌 숫자와 같이 1부터 20까지로 나타낸다. 이제 여러분은 다음과 같은 규칙으로 카드의 위치를 바꾼다: 구간 [a, b] (단, 1 ≤ a ≤ b ≤ 20)가 주어지면 위치 a부터 위치 b까지의 카드를 현재의 역순으로 놓는다. 예를 들어, 구간이 [5, 10]으로 주어진다면, 위치 5부터 위치 10까지의 카드 5, 6, 7, 8, 9, 10을 역순으로 하여 10, 9, 8, 7, 6, 5로 놓는다. 이제 전체 카드가 놓인 순서는 아래 그림과 같다. 이 상태에서 구간 [9, 13]이 다시 주어진다면, 위치 9부터 위치 13까지의 카드 6, 5, 11, 12, 13을..
▶ 문제 문자와 숫자가 섞여있는 문자열이 주어지면 그 중 숫자만 추출하여 그 순서대로 자연수를 만 듭니다. 만들어진 자연수와 그 자연수의 약수 개수를 출력합니다. 만약 “t0e0a1c2h0er”에서 숫자만 추출하면 0, 0, 1, 2, 0이고 이것을 자연수를 만들면 120이 됩니다. 즉 첫 자리 0은 자연수화 할 때 무시합니다. 출력은 120를 출력하고, 다음 줄에 120 의 약수의 개수를 출력하면 됩니다. 추출하여 만들어지는 자연수는 100,000,000을 넘지 않습니다. ▶ 입력 설명 첫 줄에 숫자가 썩인 문자열이 주어집니다. 문자열의 길이는 50을 넘지 않습니다. ▶ 출력 설명 첫 줄에 자연수를 출력하고, 두 번째 줄에 약수의 개수를 출력합니다. ▶ 입력 g0en2Ts8eSoft ▶ 출력 28 6 ..