테스트 사이트 - 개발 중인 베타 버전입니다

python파일 실행 채택완료

sIr어드밈 3년 전 조회 4,115

aws 가상서버입니다.

폴더보면 

 

/usr/share/nginx/html/그누보드 이렇게 있는데요...

 

 

    $python = `test.py`;

    echo $python;

?>

이렇게 그누파일 있는곳에 같이 넣고 

 

tython.py파일

------------------------

import random

import math

n = math.factorial(5)

print(random.randrange(100))

print(n)

print("파이썬") 

------------

 

이 py파일을 실행해보려고 했더니 안되어서 보니

 

python은

/usr/lib64/python3.7 이렇게 설치되어 있네요.

 

이경우 어떻게 해야 할까요?

 

 

 

 

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
B
3년 전

`test.py` 만 실행해서는 command not found겠죠.

`python test.py`처럼 실행해야 합니다.

그리고, 체크는 아래처럼 하면 됩니다.

</p>

<p><?php</p>

<p>echo `python -V`;</p>

<p>

아무것도 뜨지 않으면, Python 3.7 버전이 설치되었으니 아래처럼 해보세요.

</p>

<p><?php</p>

<p>echo `python3 -V`;</p>

<p>

정상적으로 Python 버전이 뜨면, 아래처럼 변경하면 됩니다.

</p>

<p><?php</p>

<p>$python = `python3 test.py`;

echo $python;</p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
sIr어드밈
3년 전
감사합니다!! 덕분에 해결하였습니다.

댓글을 작성하려면 로그인이 필요합니다.

s

이거 된건지 봐주시면 고맙겠습니다.

 

 

   //$rt=exec("ls");     //echo $rt;    //print_r($output);    

    echo $output[0]. ""; //Success1     echo $output[1]. ""; //Success2     echo $output[2]. ""; //AAA     echo $output[3]. ""; //가나다     echo $output[4]. ""; //가 나 다     ?>

 

php는 위와 같고

 

파이썬 파일은 py1.py 인데 다음과 같이 하니

 

# -*- coding: utf-8 -*- import sys   def call(var_1, var_2, var_3):     # 무언가를 처리하고..    # print로 값을 return해서 php에서 받을 수 있음     print('Success1', 'good')     print('Success2', 'bad')

    print('Success3', 'no')     print('Success4', '11111111111111111')

    print(var_1)     print(var_2)     print(var_3) call(sys.argv[1], sys.argv[2], sys.argv[3])

 

그리고 브라우저에서  도메인/test.php 새로고침해보니

 

Success1 goodSuccess2 badSuccess3 noSuccess4 11111111111111111AAA

 

위와 같이 나옵니다.

 

질문1: 이제 되는건가요?

질문2: 이게 php파일에서 python 데이터를 가져오는건가요? 아니면 데이터도 가져오고 python 파일도 실행시키는 건가요?

 

파이썬 시작해본지가 며칠안되어 그렇습니다 헤헤    

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

실행하려면 exec 로 해야하지 않나요?

</p>

<p><?php</p>

<p>    $python = `test.py`;</p>

<p>    exec("python ".$python);</p>

<p>?></p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

s
sIr어드밈
3년 전
여기보고 똑같이 해보고있는데요,,네이버 블러그는 암튼 도움이 안되요,,경로 때문일까요?
https://blog.naver.com/PostView.naver?blogId=netatom&logNo=221155462666&parentCategoryNo=&categoryNo=23&viewDate=&isShowPopularPosts=true&from=search
레전드플랫폼
3년 전
파이썬이 실행되는지는 확인해봤나요?
B
BiHon
3년 전
+ Execution Operators
- https://www.php.net/manual/en/language.operators.execution.php
- http://docs.php.net/manual/kr/language.operators.execution.php

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인