질문은 스택을 만드는 함수를 작성하고, 주어진 매개 변수 문자열의 문자를 스택에 넣고 매개 변수 문자열에 '*'
으로 표시된대로 끕니다. 표현식에있는 문자는 스택에 밀어 넣기를 나타내고 별표는 팝 작업을 나타냅니다. 이 함수는 modify_stack
이라고하며 단일 문자열을 매개 변수로 사용하고 팝 작업에서 반환 된 값의 시퀀스를 반환합니다. print(modify_stack('EAS*Y*QUE***ST***IO*N***'))
스택에 밀어 넣고 팝업 파이썬으로
내 코드를 사용하여 함수를 호출 :
def modify_stack(symbolString):
stack=Stack()
i=0
for i in symbolString:
if i != '*':
stack.push(i)
else:
print(stack.pop())
정답은 'SYEUQTSAONIE'
,하지만 난 다른 뭔가를 얻었다. 내가 잘못한 곳을 지적 해주십시오.
기능에서 디버거를 반환하고 코드 라인을 통해 단계. 어떤 시점에서 그것은 당신이 기대하는 것과 다른 뭔가를 할 것입니다. 그것이 문제이다. –
질문을 구성하고 "다른 것을 얻었습니다"대신에 얻은 것을 알려주십시오. – oyss
'Stack'이 맞다고 가정하면 함수는 올바른 문자를'print'하고 암시 적으로'return None'을 반환합니다. 당신이 얻고있는 결과를 분명히하십시오. – jonrsharpe