본문 바로가기

numpy 설치 오류 ImportError: Error importing numpy: you should not try to import numpy from its source directory; please exit the numpy source tree, and relaunch your python intepreter from there. 위와 같은 에러메시지가 나와서 몇일을 고생했는데 SciPy 를 설치하니 작동했다. 넘파이가 C언어 기반이라서 관련 라이브러리를 설치해야 한다나 뭐라나... 너무 간단해서 황당한...
아나콘다 가상환경 관련 명령어 라이브러리를 관리하고 32비트 환경을 만들기 위해서 아나콘다 가상환경을 사용하고 있다. 아나콘다 가상환경 만들기 파이썬 버전별 가상환경을 만들기 위해서는 아래 처럼 사용하면 된다 예시로 autobot이라는 가상환경을 파이썬 3.8로 만들면 아래와 같다. conda create -n autobot python = 3.8 [가상환경의 이름] [파이썬버전] 아나콘다 가상환경 목록 조회 보통 가상환경의 이름이 기억나지 않을때 조회할 수 있는 명령어 이다. conda env list 아나콘다 가상환경 활성화 만들어진 가상환경(예: autobot)의 이름을 넣으면 된다. conda activate autobot 아나콘다 가상환경 비활성화 만들어진 가상환경(예: autobot)의 이름을 넣으면 된다. conda de..
아나콘다 가상환경에서 ['pip'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는배치 파일이 아닙니다.] 에러메시지 대응방법 증상 아나콘다 가상환경에서 'pip'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 는 에러메시지가 계속된다. 설정에서 PATH를 등록해 봤지만 별 소용이 없었다. (system_trading_py38_32) C:\ProgramData\anaconda3>pip 'pip'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 에러메시지 (system_trading_py38_32) C:\ProgramData\anaconda3>pip 'pip'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 해결책 conda install pip (system_trading_py38_32) C:\ProgramData\..
중국주식 리스트 구할수 있는 곳 중국주식을 크롤링해서 재무비율을 산출하려고 한다. 중국주식 리스트 구할 수 있는 곳은 https://www.hkex.com.hk/Mutual-Market/Stock-Connect/Eligible-Stocks/View-All-Eligible-Securities?sc_lang=en View All Eligible Securities Lists of all securities eligible for trading through Stock Connect along with margin trading and short selling information. www.hkex.com.hk 이다. 내용을 찾다보니까 홍콩에 상장된 주식과 중국에상장된 주식의 가격차이가 존재하던데 사유가 궁금해진다. 또한 미국에 상장된 중국..
Pandas DataFrame의 컬럼이름이 숫자일 수 있음 흔히 컬럼명을 문자라고 생각하지만 의외로 컬럼명의 데이터형이 숫자일 수 있다. 컬럼명을 지정할 일이 있어서 dv.rename(columns={'0': 'Factor', '1': codes[i]}, inplace=False) 를 사용했을 때 자꾸 에러가 반복되었다. 디버깅 과정에서보니 컬럼명이 숫자였다.
리스트의 항목으로 URL생성시에는 quote로 리스트에 있는 값으로 URL을 생성하여 크롤링을 할 때에는 quote함수로 특수 문자등을 이스케이프 해주면 좋다
python 32bit 설치 잘 되던 이베스트 투자증권 API접속시 다음과 같은 에러메시지가 뜬다. ..... line 89, in _GetGoodDispatch IDispatch = pythoncom.connect(IDispatch) pywintypes.com_error: (-2147221021, '작업을 사용할 수 없습니다.', None, None) 검색해보니 32bit 인 win32com을 64bit 인터프리터로 돌려서 그렇다는데 일단 python 32bit를 설치하여 인터프리터로 등록했다. 일단은 에러없이 돌아간다.
if __name__ == "__main__" 은 프로그램 시작점 파이썬을 통해서 증권사 API를 이용한 프로그램을 배우는 중이다. 프로그램 예시에서 아무런 설명없이 if __name__ = __main__이라는 조건을 썼는데 이는 프로그램의 시작점이라는 의미이다. 구현한 코드는 사용자에 의해서 임포트 될 수도 있고, 파이썬 인터프리터에 의해 실행될 수 있는데 파이썬 인터프리터에 의해서 모듈이 직접 실행될 때, 네임스페이스에서는 __name__ 변수에 __main__이라는 이름을 설정한다. 함수를 정의하면서 그때마다. 증권사 API의 인스턴스를 정의한다면 함수가 반복됨에 따라서 인스턴스가 생성되고 다시 소멸되기 때문에 함수가 느려지가 마련이다. 때문에 if __name__ = __main__ 이라는 조건으로 프로그램의 시작점에서 인스턴스를 생성하고 생성된 인스턴스를 지..