needmoreeasy EN 한국어
배우기

Python을 NME로 변환하기

변환기는 입력 전체가 올바른 Python인지 먼저 확인한 뒤, 요청한 NME 단계에서 뜻을 안전하게 보존할 수 있는 줄만 바꿉니다.

nme 변환 app.py --level 문장형 --language 한국어 -o app.nme

옵션

--level advanced|beginner|sentence
--language en|ko
-o, --output <file.nme>

고급, 초급, 문장형, 영어, 한국어도 옵션 값으로 쓸 수 있습니다. 옵션이 없으면 영어 문장형 결과를 화면에 표시합니다. -o가 없으면 입력 파일을 절대 수정하지 않습니다.

바뀌는 문법

Python초급문장형
print(value)말해 value보여줘 value
name = input(prompt)물어봐 name, promptname을 물어봐 prompt
n = int(input(prompt))Python 유지n을 숫자로 물어봐 prompt
for _ in range(n):n번:n번 반복해
if condition:만약 condition:만약에 condition
import randomPython 유지Python 유지
x = open("f").read()Python 유지x에 "f" 읽어서
open("f", "w").write(v)Python 유지"f" 파일에 "v"를 저장해
x = Path("f").read_text()Python 유지x에 "f" 읽어서
간단한 대입Python 유지name은 value

영어 출력은 say, ask, times, when, use random과 자연스러운 영어 문장형을 사용합니다. 파일 읽기·쓰기는 문장형에서 x에 "f" 읽어서 / "f" 파일에 "v"를 저장해로 변환되며, 초급 변환은 use file 모듈이 초급 파일 도구이므로 Python을 유지합니다.

평범한 import random을 바꾸면 사용자가 만든 random, random_number, 한국어 도구 이름을 덮어쓸 수 있으므로 Python으로 유지합니다. 자동 변환이 글자를 변수로 잘못 끼워 넣거나 자연어 질문용 공백을 새로 붙이지 않도록 문자열 따옴표와 질문 내용을 정확히 유지합니다. 결과를 확인한 뒤 더 문장처럼 쓰고 싶을 때 직접 따옴표를 없앨 수 있습니다. 주석, 들여쓰기, 빈 줄, 줄바꿈, 변환 대상이 아닌 Python은 그대로 유지합니다.

일부 Python이 남는 이유

NME 고급 문법은 Python입니다. 클래스, 예외 처리, 복잡한 호출, 여러 값을 출력하는 print에는 같은 동작을 반드시 보장하는 더 짧은 NME 표현이 없으므로 고급 문법으로 남깁니다. 이것은 실패한 일부 변환이 아니라 완전하게 실행할 수 있는 NME 결과입니다.

결과를 확인하고 검사하세요.

nme 검사 app
nme 빌드 app -o app.generated.py

GitHub에서 이 문서 보기