파이썬으로 CLI를 시뮬레이트하라는 질문을 받았습니다. 파이썬으로 CLI 쉘을 시뮬레이트
이
내가 또한, 여기에 "splitit"나는 처음 작동 될 것입니다 만 3 argumets을 허용리스트의 길이를 확인 않으며, 두 번째와 세 번째는 인수입니다def somefunction(a,b):
//codes here
//consider some other functions too
print "--- StackOverFlow Shell ---"
while True:
user_input = raw_input("#> ")
splitit = user_input.split(" ")
if splitit[0] == "add":
firstNum = splitit[1]
sNum = splitit[2]
result = somefunction(firstNum, sNum)
print result
//consider some other elif blocks with "sub", "div", etc
else:
print "Invalid Command"
을 한 것입니다 인수가 3보다 큰 경우에 수행 할 함수가있는 함수입니다.
어떻게 든 나도 그럭저럭 잘 만들 수 있지만 같은 것을 성취하기위한 더 좋은 방법이 있습니까?
명령 당 ", 빠르게 속도가 느려거야, 그리고 당신이 구문 분석과 논리로 자신의 구문을 혼합 할 경우 쉘이 이상 유지할 될 것입니다 : 이것은 얼마나 쉽게 ". tokenizer, parser (일부 명령 데이터베이스 포함) 및 인터프리터 (실행 단위), 각 명령에 대해 동일한 단계를 다시 반복하는 대신 원시 입력이 실행 전에이 단계를 통과하는 파이프 라인으로 분할하십시오. –
예 2-3 기능을 위해 나는 그걸로 잘 됐어 ...하지만 나는 initialising 동안 인수를 통과하지 않도록 요청했다. 내 교사는 2-3 명령이 좋다고 말했지만 거대한 프로그램의 경우 유지 관리가 어려울 것입니다. 전 전혀 모릅니다. 그리고 모릅니다. 그것을 만드는 방법은 사용자 정의 된 프롬프트라고 생각하십시오. – Whiskey