본문 바로가기

파이썬

(66)
pip install 시 Visual C++ is required 메시지와 함께 설치에러가 발생하는 이유 파이썬 패키지들은 소스로 제공될 경우도 있고, 미리빌드된 휠(prebuilt wheel)로 제공될 경우도 있습니다. 미리빌드된 휠은 소스를 각 플랫폼 (리눅스, 윈도우, 맥, 32비트, 64비트 등등) 에 맞게 누군가가 미리 빌드하여 제공하는 것이기 때문에, "현재" 가장 대중적인 플랫폼에 대해 우선적으로 제공됩니다. 2020년 현재는 32비트 파이썬은, 64비트 버전에 비해 덜 대중적입니다. 따라서 32비트 파이썬을 설치한 경우에는 pip 설치시에 이러한 에러를 만날 확률이 큽니다. (마찬가지로 파이썬 2.7 버전, 또는 나온지 오래된 3.4, 3.5 등등, 그리고 이제 막 새롭게 버전이 출시되었을 때에도) 물론 적절한 컴파일 환경 ( vc 컴파일환경 등 ) 을 설정한 경우에는 소스를 컴파일하여 잘 설..
'python'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 파이썬을 처음 배우는 초보자들이 윈도우에서 파이썬 스크립트를 실행하려고 할 때 제목과 같은 에러 메시지가 나올 때가 있다. c:\Users\me>python hello.py `python`은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. python 설치 디렉토리가 실행파일들을 찾는 PATH 환경변수에 포함되지 않아서 발생하는 에러이다. 이 문제를 해결하기 위해선 다음과 같은 방법이 있다. 한가지 방법은 파이썬을 지우고 다시 설치하면서 설치 중에 환경변수 추가던가 하는 걸 체크하고 설치하면 된다. 다른 방법은 명령중에 python 부분을 py 로 바꾸어 입력하여 실행해 보는 것이다. 즉, python hello.py 대신에 py hello.py 를 입력하고 엔터하여 ..
아나콘다에서의 패키지 설치 아나콘다(Anaconda)에서 패키지 설치시에 개인적으로 지키려는 원칙 conda install 로 설치해본다. conda install -c conda-forge 명령으로 설치해 본다. 인터넷에서 anaconda + 패키지명 으로 검색하여, anaconda.org 사이트 페이지가 검색되면, 검색페이지에서 소개하는 채널을 이용하여 conda install -c 명령으로 설치한다. 위 모든 것이 실패하였을 때에, pip install 한다. pip install 시 디펜던시로 설치된 패키지들 중에 conda install 이 가능한 패키지가 있다면, pip uninstall 한 후에 conda install 로 다시 설치한다. 그리고 base 는 작업용으로 사용하지 않고, 작업용으로는 반드시 conda c..
팩토리얼이 어떤 수로 나누어 떨어지는지 확인하기 어떤 정수 f의 팩토리얼이 다른 정수 n 으로 나누어 떨어지는지 확인하기. 1 x 2 x .. x f / n 를 손으로 계산할 때, 팩토리얼부터 구하지 않을 것. 분명 분모와 2를 약분하고, 분모와 3을 약분하고 ... 를 반복하는 방식으로 풀 것이다. 이 과정을 코드로 옮겨 봄. from functools import lru_cache @lru_cache(None) def gcd_r(b, s): if b < s: b, s = s, b b, s = s, b%s if s == 0: return b return gcd_r(b, s) def gcd(b, s): if b < s: b, s = s, b while True: b, s = s, b%s if s == 0: break return b def fac_di..
[Python] with 컨텍스트를 이용해서 다른 디렉토리에서 작업하고 오기. ref : https://stackoverflow.com/questions/299446/how-do-i-change-directory-back-to-my-original-working-directory-with-python 컨텍스트 매니저 함수를 다음과 같이 정의하고, from contextlib import contextmanager @contextmanager def cwd(path): oldpwd=os.getcwd() os.chdir(path) try: yield finally: os.chdir(oldpwd) 다음과 같이 쓰면 된다. print('current dir = `%s`'%(os.getcwd()) with cwd('./subdir'): # 여기서 하고 싶은 일들..
[Flask] Pycharm Community 에서 Flask 프로젝트 실행/디버그 설정하기 Pycharm Community 에서 Flask 프로젝트 실행/디버그 설정하기 0. 간단한 flask 프로젝트 생성 PS D:\DEVPROJECTS\PycharmProjects\flasko> tree DEXTR 볼륨에 대한 폴더 경로의 목록입니다. 볼륨 일련 번호는 1894-E5A9입니다. D:. └─flasko ├─static │ ├─content │ ├─fonts │ └─scripts └─templates PS D:\DEVPROJECTS\PycharmProjects\flasko> dir 디렉터리: D:\DEVPROJECTS\PycharmProjects\flasko Mode LastWriteTime Length Name ---- ------------- ------ ---- d----- 2019-11-..
[Python] cmd 에서 python 인터프리터 진입시 UnicodeDecodeError 아나콘다 프롬프트에서 python 을 입력하여, 파이썬 인터프리터로 진입하려 하였을 때, 아래와 같은 UnicodeDecodeError 가 발생했다. 인터프리터 진입시마다 에러 메시지가 발생하여 꺼림직해서, 검색을 해서 해결책을 찾아봤다. 에러메시지를 보면, read_history_file 함수 안에서 파일을 open 하는 부분에서 에러가 발생하는 것이었다. 스택오버플로우의 한 질문답변에서 원인을 찾았다. %USERPROFILE%/.python_history ( C:\Users\username\.python_history ) 파일(윈도우 환경임. 다른 운영체제는 위치가 다를 것.)에 파이썬 인터프리터 명령이 저장되어 있는데, 이 파일에 한글등이 포함되어 있으면, 파일을 읽는 과정에서 UnicodeDeco..
PIP 수동으로 설치하기 참고 : https://github.com/pypa/pip/issues/2351#issuecomment-69994524 pip 를 업그레이드 설치하다가 pip 명령이 들지 않는 문제가 발생했다. 윈도우 환경에서는 pip 를 업데이트할 때, python -m pip install -U pip로 명령을 주지 않고, pip install -U pip 로 명령을 주었을 때, 자신을 삭제하고 업데이트된 버전의 설치는 진행하지 않고 끝내면서, pip 가 지워지는 사태가 가끔 발생하는 것 같다. (리눅스 환경에선 문제가 없음.) (aigpu3664) D:\Temp> pip list Traceback (most recent call last): File "D:\Python3664\lib\runpy.py", line 1..