저는 파이썬으로 미니 언어를 개발하고 있습니다. (개인 프로젝트를위한 몇 가지 명령이 아닙니다.)스택에 공백이있는 문자열 추가
class FlashCard:
def __init__(self):
self.commands = {'addQuestion':self.addQuestion}
self.stack = []
self.questions = {}
def addQuestion(self):
question = self.stack.pop()
answer = input(question)
def interpret(self,expression):
for token in expression.split():
if token in self.commands:
operator = self.commands[token]
operator()
else:
self.stack.append(token)
i = FlashCard()
i.interpret('testing this addQuestion')
해석] 함수는 문자열에서 마지막 단어 (이)를 끌어 :
여기에 코드입니다. 전체 라인을 당기는 방법이 있습니까?
감사합니다.
들어오는 답변에서 내가 원하는 결과에 혼란스러워합니다. 해석을 위해 전달 된 전체 표현식이나 명령 토큰이 아닌 토큰 만 유지하려고합니까? 또한, 명령 토큰이 표현식의 중간에 발견되면, 호출 된 후 이전에 캡처 된 토큰에만 작용합니다. 그게 네가 원하는거야? – jdi
@jdi - OP 만 확실히 알고 있지만 코드에서 '고양이의 터키어 번역이란 무엇입니까?'와 같은 사용자 지정 명령에 대한 파서를 작성하고있을 것으로 예상됩니다. addQuestion' [아마도 "고양이"의 터키어 번역은 무엇입니까? "라는 질문에 새 플래시 카드를 추가해야 할 것입니다." 나는 틀릴지도 모른다! :) – mac
당신이 맞습니다, 맥. 각 문제는 그 자체로 서 있어야하며, 새로운 해석 라인은 오래된 질문과 결합되어서는 안됩니다. –