예전에 julia 구현 해놓았던걸 python 에서 호출해서 써야할 일이 생겨서.
검색해보니 python에서 julia 콜하려면 PyJulia, julia에서 python 콜 하려면 PyCall 사용하면 된다고 해서.
우선 PyJulia 설치. https://github.com/JuliaPy/pyjulia
% pip install julia
설치 후 그냥 import julia 해서 테스트해보려니 모듈 인식 못하고 에러.
일단 위 링크의 페이지에 나온대로 julia.install() 구문을 소스에 넣고 실행해보니 julia 에 PyCall 을 포함한 라이브러리들을 설치하는게 보인다.
그리고 뭔가 된다 ㅎ
import julia
julia.install()
from julia import Main
t1 = Main.eval('[x^2 for x in 0:4]')
print(t1)
한 번 install() 함수 실행시켜주고 나니 이후에는 잘 동작하는 듯 싶어서 애초 목표인 julia 스크립트 파일 실행시키는거 도전.
생각보다 방법은 간단해서 Main.include 로 스크립트 파일 불러들인 후 Main.실행할_함수() 식으로 호출해주니 깔끔하게 실행.
from julia import Main
Main.include("optYt.jl")
Main.main()
덧.
1. 잘 실행 됨에도 PyCharm 에서는 import Main 가 에러인 것처럼 빨간 줄이 계속 표시되길래 영 거슬려서 'Ignore an unresolved reference 'julia.Main' 선택해서 빨간 줄 일단 사라지게 처리.
2. 설정 및 실행 위해서는 당연히 julia 사전에 설치되어 있어야 하고 PATH 에 julia/bin 디렉토리를 설정해두어야 한다.
3. 콘솔에서는 잘 되는데 apscheduler 에 스케쥴링 등록해서 쓰는 것에서는 에러는 발생하지 않지만 제대로 동작하지 않는다. 이 문제는 좀 더 테스트 후 다시 기록 남기도록 하겠다.
'Lang' 카테고리의 다른 글
jdk 17 에서 spark 애플리케이션 실행 시 IllegalAccessError 해결법 (0) | 2022.07.05 |
---|---|
[Kotlin]Kotlin, Spring boot, Reactive Programming 조합으로 간단한 Rest API 구현해보기 (0) | 2022.05.20 |
[java]r2dbc 와 jpa/jdbc 같이 사용 시 에러 해결법 (0) | 2022.05.10 |
[go] postgresql 연동 테스트용 go 코딩 샘플 (0) | 2022.04.20 |
[python]엑셀 파일에서 데이터 추출해서 소스 생성하기 (0) | 2022.04.14 |