Search

반응형

'Software/Python(파이썬)'에 해당되는 글 25건

  1. 2020.11.04 [HOW]파이썬에서 numpy 설치하는 방법, RuntimeError 오류 해결 , python 2
  2. 2020.10.25 [HOW]파이썬에서 예외처리 하는 방법, 에러처리, python, 왕초보, exception, error
반응형

안녕하세요. 신기한 연구소입니다.

파이썬을 이용해서 딥러닝을 공부하는데

numpy 설치가 필요해서 설치하던 중 오류가 발생해서

설치법과 해결법을 살펴보겠습니다.

 

 

환경은 windows 10 64bit이고

파이썬 버전은 3.8.6입니다.

버전 확인방법은 윈도우즈 아래 작업표시줄에서 

검색창에 cmd를 입력하고 엔터를 치면 command창이 열리고

다음과 같이 명령어를 입력하면 됩니다.

c:/>python --version

 

 

우선 numpy가 설치되어있는지 테스트해봅니다.

 

 

import numpy as np를 실행하니

ModuleNotFoundError 오류가 발생했습니다.

numpy라는 모듈을 찾을 수 없다는 의미네요. (No module named 'numpy')

 

이제 numpy를 설치합니다.

주의할 점이 있습니다.

현재 파이썬이 32bit인지 64bit인지에 따라 설치방법이 조금 다릅니다.

 

2020/11/26 수정합니다.

현재 1.19.4 윈도우 버전이 버그가 있다고 하네요.

그래서 1.19.3 윈도우 버전을 설치하면 된다고 합니다.

제가 64비트로 설치한 것도 1.19.3 윈도우 버전이네요. ㅎㅎ

아래 글은 참고만 하세요~~

설치 방법은 댓글에 @아이코님이 설명해주셨네요. 감사합니다.

이상입니다.

 

 

32bit인 경우는 다음과 같이 실행하면 됩니다.

pip를 실행하는 방식인데요.

pip install numpy를 command창에서 실행하면 됩니다.

성공적으로 설치가 되었습니다.

C:\Users\"사용자이름을 넣으세요"\AppData\Local\Programs\Python\Python38\Lib\site-packages

위 경로에 가면 다음 두 개의 폴더가 생성된것을 확인할 수 있습니다.

 

 

이제 다시 테스트해봅니다.

 

 

import numpy as np를 실행하니 오류가 발생했습니다.

오류 검색 용어는

(

_win_os_check(), in _win_os_check, raise RuntimeError(msg.format(__file__)) from None,

RuntimeError: The current Numpy installation,

fails to pass a sanity check due to a bug in the windows runtime.

) 입니다.

 

64bit 파이썬에 설치해서 나는 오류입니다.

 

64bit에서도 사용할 수 있게 다시 설치합니다.

 우선 기존 두 개의 폴더는 삭제합니다.

 

 

삭제시 사용중이라는 메시지가 뜨면 파이썬 툴을 종료하고 다시 시도하면 됩니다.

삭제가 되었다면 이제 numpy 64bit용으로 설치합니다.

 

www.lfd.uci.edu/~gohlke/pythonlibs/#numpy

 

구글링을 하니 위 사이트에서 받으면 된다고 해서 방문했습니다.

파이썬 3.8.6에 64bit라서 해당 파일을 찾아보니

 

numpy-1.19.3+mkl-cp38-cp38-win_amd64.whl

이 파일을 찾았습니다. 38이 3.8 버전을 의미하고 amd64가 64bit를 의미합니다.

 

이제 설치를 시도합니다.

명령어는 다음과 같습니다.

pip install [whl파일이 설치된 경로와 파일명.whl] 

 

 

Successfully installed 되었습니다.

이제 import가 잘 되는지 테스트해봅니다.

 

 

이제 오류없이 적용되었습니다.

 

그러면 numpy를 테스트해볼까요?

 

 

와우~ 성공적으로 잘 설치가 되었습니다.

이제 numpy를 활용해서 딥러닝 공부를 열심히 해야겠네요.

 

뭔가 새로운 것을 시도하면 꼭 한 번에 되는 경우가 드물더군요.

그만큼 환경 변수가 많아서인듯 합니다.

많은 개발자분들이 겪은 어려움을 같이 공유하면 좋겠네요.

 

아래 하트(공감) 버튼을 눌러서 더 다양한 글을 쓸 수 있게 응원 부탁드립니다. 감사합니다.

 

 

반응형
반응형

안녕하세요. 신기한 연구소입니다.

프로그램을 잘 만드는 것도 중요하지만 

예기치 못한 오류가 발생했을 경우 시스템이 왜 멈췄는지 모른다면

정말 난해할 것입니다.

 

또한 업무적으로나 개발 시 필요한 예외가 있을 겁니다.

그런 경우 프로그램 언어에서는 예외처리 기능을 제공하고 있답니다.

파이썬 역시 예외처리를 지원하고 있으니 어떻게 사용하는지 확인해보겠습니다.

 

 

먼저 파이썬에서 제공하는 예외 형태를 살펴보겠습니다.

 

오류가 발생했습니다.

이유는 숫자와 문자를 이용해 곱셈을 시도했기 때문입니다.

우선 시도를 하는 경우니 실행하기 전까지는 오류가 발생할지 모를 수 있습니다.

 

지금은 간단하게 3줄로 코딩했지만

실전에서는 수십에서 수천 라인의 코딩을 할 수 있습니다.

그러다 보면 실수를 할 수도 있고

변수로 값이 넘어오는 경우 잘못 전달해서 오류를 발생할 수 있습니다.

입력부에서 미리 값을 체크할 수도 있지만

시스템 통신을 하는 경우 예상 못한 변수가 발생한 수 있답니다.

 

그런 경우 예외처리를 해서 어디서 어떤 문제가 있는지 

로그를 확인해서 처리할 수도 있고

시스템이 멈추는 현상을 미리 방지할 수도 있습니다.

즉, 서비스의 지속성에 중요한 역할을 할 수 있답니다.

 

그럼 파이썬은 이런 경우 어떻게 예외처리하는지 알아봅니다.

구현부는  try:를 사용합니다.

시도를 해본다는 의미겠네요.

당연히 들여 쓰기를 해야 합니다.

 

그리고 try: 내의 구현부에 오류가 발생하면 (예외라고 하죠)

except로 이동합니다.

예외의 형태가 같으면 진입해서 해당 구현부를 실행하고

아니면 다른 except를 찾습니다.

그 또한 없다면 예외처리가 잘못된 것으로

기존처럼 오류가 발생합니다.

 

위 예제는 TypeError임을 알고 미리 지정했습니다.

개발자는 try구현부가 어떤 예외가 발생할지 예측을 하고

해당 예외마다 적절한 처리를 할 수 있게 됩니다.

 

import sys를 사용해서 sys.exc_info()[0]로 

예외의 형을 볼 수 있습니다.

 

이번 예제는 except에 형을 지정하지 않고 Exception이라고만 지정했습니다.

이유는 어떤 예외가 발생할지 모르는 경우에 사용할 수 있습니다.

그리고 그 예외가 어떤 것인지 sys.exc_info()[0]를 사용해서

확인할 수 있답니다.

 

이번 예제는 as를 사용해서 오류 정보를 좀 더 사용자 입장에서 

확인할 수 있는 방법을 보여줍니다.

오류를 살펴보니 k를 정의하지 않았다는 정보를 보여줍니다.

개발자가 s1을 사용해야 하는데 상수값인 k를 변수로 착각했을 경우를

예상해 본 것입니다.

 

모듈을 만드는 경우 개발자 입장에서는 어떤 예외가 발생할지 예측하고

미리 지정해서 사용할 수도 있고

혹시 그 외 예외가 발생할 수도 있기에 

다양하게 구성할 수 있습니다.

 

except를 2개 사용해 봤습니다.

위 예제처럼 다양하게 예외를 처리할 수 있습니다.

지금까지 파이썬의 기본적인 예외처리 방법을 알아봤습니다.

잘못된 정보나 수정이 필요하면 댓글 주세요.

아래 하트(공감) 버튼을 눌러서 더 다양한 글을 쓸 수 있게 응원 부탁드립니다. 감사합니다.

반응형