
git clone https://github.com/ethanchewy/PythonBuddy.git
cd PythonBuddy
python3 -m venv venv
source venv/bin/activate
python --version
Python Bython 3.7.6을 사용하지 않으면 PythonBuddy의 일부 Python 라이브러리가 작동하지 않을 수 있습니다 . 이 stackoverflow 게시물을 통해 virtualenv를 통해 특정 버전의 Python을 만드는 방법을 알아 보려면이 문서를 참조하십시오.
pip install -r requirements.txt
PythonBuddy/PythonBuddy/ 에 있어야합니다. cd PythonBuddy
export FLASK_APP=app.py
flask run
브라우저를 LocalHost : 5000으로 열어보십시오. 짜잔! ?



PythonBuddysandbox라는 PythonBuddy의 Dockerized 버전을 사용하는 완전히 작동하는 웹 구현을 위해 PythonBuddysandboxed를 확인하십시오.
이것은 Christophetd의 Docker-Python-Sandbox에서 벗어나 백그라운드에서 Pylint를 실행하고 클라이언트 측에서 Pylint 메시지를 처리하도록 수정합니다.
그가 웹 쪽에서 그것을 어떻게 구현하는지 보려면 https://github.com/christophetd/code-execution-api-demo를 확인하십시오.
이것은 여전히 알파 단계에 있으므로 몇 가지 버그가있을 수 있습니다. 이를 구현하려면 문서화가 WIP이므로 위의 4 개의 링크를 확인하십시오.
테스트를 실행하려면 루트 디렉토리에서 실행하십시오.
pytest
적용 범위의 경우 루트 디렉토리에서 다음 명령을 실행합니다.
pytest --cov-report html --cov=PythonBuddy tests/
왜 이것을 만들었습니까?
2014 년에 저는 MIT EDX 6.00.1X 코스의 커뮤니티 TA로 1000 명 이상의 학생들을 가르치는 데 도움을주었습니다. Eni Mustafaraj 교수에서 연구를 시작한 해. 그녀는 그 과정에서 데이터 세트를 가지고 있었고 우리는 처음 2 주 안에 학생들의 높은 율법을 보았습니다. 커리큘럼과 데이터를 파헤친 후, 나는 학생들이 코드를 실행할 때 해결할 수없는 복잡한 오류 메시지를 설정하는 데 어려움 때문에 학생들이 떠났다는 것을 깨달았습니다 (예 : 일부 학생들은 경로 문제가있었습니다).
그래서 저는이 문제를 해결하기 위해 PythonBuddy를 만들었으므로 학생들이 Python 환경을 설정하고 겉보기에 "무작위"버그로 들어가는 좌절감을 겪을 필요가 없습니다. PythonBuddy를 사용하면 라이브 구문 확인 및 하이라이트를 지원하여 사용자가 Python 프로그래밍에 바로 뛰어들 수 있습니다. 또한 교수와 교사는 서버를 쉽게 설정하고 학생들이 PythonBuddy Online으로 자신의 코드를 신속하게 테스트 할 수 있도록 할 수 있습니다.
누구든지 전에 이와 같은 것을 만든 사람이 있습니까?
Python Online의 라이브 구문 검사기는 없었습니다. "라이브"가 아닌 유사한 프로젝트
어떻게 기여할 수 있습니까?
당신은 할 수 있습니까? 내 repo를 Star, My Repo를 포크, 풀 요청을 제출하고/또는 열린 문제를 제출하십시오!
MOOCS에 포함시키는 코드는 어디에 있습니까?
나는 현재 여기에서 이것 (특히 EDX의 경우) : https://github.com/ethanchewy/pybuddy2.0입니다. 이 프로젝트를 사이트에 직접 포함시키려면 iframe을 사용합니다.
<iframe src="https://pythonbuddy.com"></iframe>
코드가 실제로 특정 방식으로 컴파일하고 실행되기를 원하십니까?
PythonBuddy를 안전하게 실행하려면 Docker 및 Node.js를 사용하여 PythonBuddy 구현을 확인할 수 있습니다. 기본적으로 각 사용자 세션 (각 사용자의 가상 시스템 생성과 유사)을 도커 화하고 너무 많은 메모리를 사용하거나 악의적 인 코드를 실행하면이를 파괴합니다.
제한된 파이썬 브랜치에서 제한된 방식으로 파이썬을 실제로 실행하려면 https://github.com/ethanchewy/pythonbuddy/tree/restrictedpython.
내 자신의 서버를 어떻게 실행합니까? 일반 : https://github.com/ethanchewy/onlinepythonlintersyntaxchecker/wiki
샌드 박스 : https://github.com/ethanchewy/pythonbuddy/wiki/running-sandboxed-pythonbuddy
FlaskCon 2020, Python Weekly, CSS 저자 및 Talk Python Podcast에 등장했습니다.
이것은 Ethan Chiu에 의해 Wellesley College 교수 Eni Mustafaraj의지도하에 연구 프로젝트로 만들어졌습니다.
2020 년 10 월 현재 PythonBuddy.com은 매달 80,000 명 이상의 사람들에게 호스팅 비용이 증가함에 따라 더 이상이 오픈 소스 프로젝트의 데모 서버가되지 않습니다. 대신이 URL 은이 Github Repo로 다시 리디렉션됩니다.