쉬운 문장에서 Python까지
Python도 어렵다면 더 쉬운 문장부터 시작해 한 단계씩 Python으로 넘어갑니다.
0. 설치 없이 먼저 써 보기
아무것도 설치하지 않고, 휴대폰에서도 됩니다. 브라우저에서 needmoreeasy.com 을 여세요(nmelang.com 을 쳐도 같은 곳으로 갑니다). 왼쪽 칸에 프로그램을 쓰면 오른쪽에 그것이 되는 Python이 바로 나타나고, 실행을 누르면 결과가 그 자리에서 나옵니다. 컴파일러도 파이썬 실행기도 브라우저 안에서 돌기 때문에 쓴 프로그램은 그 탭 밖으로 나가지 않습니다.
브라우저 실행기로는 파일·네트워크·외부 꾸러미를 쓸 수 없습니다. 그 셋이 필요해지면 아래 설치 과정을 따르세요.
아래 5분 과정은 전부 그 화면에서 하시면 됩니다. 설치는 필요하지 않습니다.
파일을 저장하거나 인터넷을 쓰는 프로그램이 필요해지는 날에
설치 안내를 보시면 됩니다. 설치를 이미 하셨다면, 아래 프로그램을
hello.nme 같은 파일에 적고 nme 실행 hello로 돌려도 결과는 같습니다.
1. Hello World
쓰는 칸에 이렇게 적고 실행을 누릅니다.
안녕하세요! 말해줘
실행해 보기 →안녕하세요!가 나옵니다. 완전한 프로그램을 만들었지만 따옴표와 괄호가
하나도 없습니다.
쓴 것을 계속 두고 싶으면 쓰는 칸 위의 파일 1·2·3 가운데 하나로 옮겨 두세요. 그 세 파일은 브라우저에 남아 있어서, 예제를 열어 보고 돌아와도 사라지지 않습니다.
2. 프로그램과 대화하기
쓰는 칸의 내용을 이렇게 바꾸고 다시 실행을 누릅니다.
이름이 뭐예요?
안녕하세요 이름!
실행해 보기 →NME는 이름에 대답이 들어 있다는 것을 기억하므로 두 번째 문장의 이름
자리에 실제 값을 자동으로 넣습니다. 더 복잡한 질문에는 물어봐를 쓰면 되지만,
처음에는 평범한 질문 한 줄이면 충분합니다.
바로 영어와 섞어도 됩니다.
What is your name?
Hello name!
실행해 보기 →3. 콜론 없이 반복하기
문장 하나를 반복합니다. 두 줄 모두 한 파일에 넣고 파일 내용을 아래로 바꿔 주세요:
3번 반복해서 NME에 오신 것을 환영합니다 말해줘
3번 안녕하세요
실행해 보기 →여러 문장이라면 파일 내용을 아래로 바꿔 주세요(다음 줄은 스페이스 네 칸으로 들여씁니다):
3번 반복해
첫 번째 문장 말해줘
show second sentence
실행해 보기 →들여쓰기가 아직 어렵다면 명시적인 끝으로 닫는 버전으로 파일 내용을
바꿔 주세요:
점수는 0
점수가 3보다 작은 동안
점수 말해줘
점수에 1 더해
끝
실행해 보기 →점수는 0은 숫자를 저장하고, 점수가 3보다 작은 동안은 그 말이 참인 동안
계속하라는 뜻이며, 점수에 1 더해는 값을 늘립니다.
같은 방식으로 멈춰, 그리고/또는, 아니면 만약에, 아니면을 쓸 수
있습니다.
4. 숫자 게임 만들기
파일 내용을 아래로 바꿔 주세요:
정답은 1부터 10까지 랜덤정수
추측을 숫자로 물어봐 1부터 10까지 숫자를 맞혀 보세요
만약에 추측이 정답과 같으면
정답입니다! 말해줘
만약에 추측이 정답보다 작으면
더 큰 수예요 말해줘
만약에 추측이 정답보다 크면
더 작은 수예요 말해줘
실행해 보기 →게임이 질문을 하고 답을 입력받을 때까지 기다립니다. 사이트에서는 쓰는 칸 위의 예제 가운데 숫자 맞히기를 누르면 완성된 것을 바로 볼 수 있습니다. 설치했다면 저장소의 예제로도 돌려 볼 수 있습니다 (한국어 · 영어).
nme 실행 examples/guessing-game.ko
랜덤 숫자, 숫자 입력, 비교, 출력이 평범한 Python으로 컴파일됩니다. 목록, 함수 호출, 등호, 콜론을 알 필요가 없었습니다.
5. 목록과 기다리기 — 여기까지도 전부 문장입니다
목록은 말하듯이 씁니다. 파일 내용을 아래로 바꿔 주세요:
친구들은 목록 민수, 지안
친구들의 친구마다 반복해
친구 안녕 말해줘
1초 기다려
끝
실행해 보기 →목록에 하나씩 넣는 것도 같습니다.
친구들은 빈 목록
친구들에 민수 넣어
친구들에 지안 넣어
친구들 말해줘
실행해 보기 →여기까지 따옴표도, 대괄호도, 콜론도, 등호도 쓰지 않았습니다. 문장형은 나중에 버리는 연습용이 아니라 NME 그 자체입니다. 가이드 01~16은 처음부터 끝까지 이 문법으로만 쓰여 있고, 출력·질문·목록·반복·조건·무작위· 이야기·화면·시간 재기·쿨타임까지 다룹니다.
원하는 날이 오면 쓸 수 있는 단계가 둘 더 있습니다. 더 짧은 초급 문법과, NME가 쓴 그대로 남겨 두는 평범한 Python입니다. 둘 다 프로그램을 완성하는 데 필요하지 않고, 설명은 문법 안내에 있습니다. 프로그래밍을 처음 배우는 중이라면 문장형에 머무르세요. 다음 절에서, 이미 쓴 문장이 어떤 Python이 되었는지 눈으로 볼 수 있습니다.
6. 검사, 빌드, 컴파일
nme 검사 hello
nme 빌드 hello -o hello.py
python3 hello.py
(Windows에서는 py hello.py.)
선택적으로 독립 실행 파일을 만듭니다.
python3 -m pip install nuitka
nme 컴파일 hello.nme -o hello
(Windows에서는 py -m pip install nuitka를 쓰세요. 설치 안내는
선택적인 [app] 구성요소를 추가합니다.)
NME는 macOS/Linux에서 python3, Windows에서 py를 자동으로 고릅니다.
특수한 환경에서만 고급 옵션 --python을 사용합니다.
7. Python을 NME로 쉽게 바꾸기
먼저 old_program.py를 print("hi")와 for i in range(3): print(i) 같은
줄 몇 개로 만듭니다(또는 6번에서 만든 hello.py를 사용해도 됩니다). 그런
다음 실행하세요.
nme 변환 old_program.py --level 초급 --language 영어 -o easier.en.nme
nme 변환 old_program.py --level 초급 --language 한국어 -o easier.nme
따옴표는 그대로 남아 있어요. 초급 문법에서는 보통 따옴표 없이 써요
(말해 hi). 결과를 확인한 뒤 더 문장처럼 쓰고 싶으면 직접 따옴표를
없애도 됩니다.