繁体   English   中英

解析括号

[英]Parsing a parenthesis

我正在尝试用Python 3制作一个计算器(仅供学习)。 我希望能够从input()评估(仅作为示例)“ 5 *(2 + 1)^ 2”。 我希望能够检测括号是否已关闭或包含另一组括号。 我还需要能够隔离其中的信息,以便可以按正确的顺序对其进行评估。

我意识到这可能是一大段代码,因此,如果您能指出正确的方向,我将不胜感激。 我正在寻找指向文档,函数名称以及您可以提供的任何提示的链接。

您正在寻找基于堆栈的计算器!

http://en.wikipedia.org/wiki/Reverse_Polish_notation

这是经典的堆栈数据结构实践问题。 您可以使用两种方法,一种是从中缀转换为后缀/前缀表示法,这虽然很容易处理,但仍然需要额外的转换步骤,或者您可以直接对表达式求值。

是该主题的一个很好的起点,是堆栈的基本实现以及有关该主题的一些更深入的信息。 从这里开始,您应该轻松找到自己的出路,否则请给我评论,我将尽力帮助您。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM