맵트랩에서 파이썬 스크립트를 돌려보자.
python.m이 맵트랩 파일이고, python.py에서 PATH를 지정해주고 python2.py를 실행하는 구조이다.
우선 기본적인 방법으로 맵트랩에서 system('python scriptName.py') 를 이용하면 importerror가 난다.
이것은 LD_LIBRARY_PATH가 제대로 정해지지 않아서이다. 이것의 PATH를 추가해주면 제대로 동작한다.
shell 환경이라면 export LD_LIBRARY_PATH='path' 해주면 쉽게 해결가능하다. python에서는 좀 더 복잡하다.
shell을 한번 거쳐서 python을 실행하는 방법도 있다.
python에서 PATH를 추가하기 위해서는 python.py를 참고하기 바란다.
import os를 하고 os.environ을 이용하여 LD_LIBRARY_PATH를 지정해준다. LD_LIBARARY_PATH는 각자의 컴퓨터마다 다르므로 알아서 찾아야한다.
어떻게 찾는것인지 아직 잘 몰라서 차후에 업데이트를 하겠다.(언제할지..ㅠㅠ 찾아봐도 잘 안나오던데 아시는 분들은 밑에 코멘트 부탁드려요)
나 같은 경우에는 교수님이 찾아서 해주셨다. 방법에 대해선 내가 찾아야하는데 구글링에도 한계가 있는것 같다.
일단 LD_LIBRARY_PATH를 추가시켜주고 os.execv명령어를 이용해서 python2.py를 실행하면 importError 없이 깔끔하게 실행된다.
방금 발견했는데 python.m 파일에 python.py 경로는 알아서 고쳐주기 바란다. (쓸대없이 한번 꼬아서 경로지정을 해놨는데 그냥 올려버렸네요)
----------------------------------------------------------------------------------
2016.02.04 PM 04:19
맵트랩에서 인자를 넘겨주는 것도 추가해서 코드 다시 업데이트 했습니다.
'언어 > ㄴPython' 카테고리의 다른 글
[pytyhon] python에서 matlab 함수 사용하기 (2) | 2020.04.08 |
---|---|
[python] randomly shuffle train data (0) | 2016.02.19 |
[python] How to get matlab data file '.mat' in python (0) | 2016.01.25 |
[pyton] numpy.cmd (0) | 2016.01.21 |
[python] generating random array (0) | 2016.01.21 |