摘要: 待处理:>>> re.findall(r'[-+]*\d+(?:\.\d+)?','-++++---+123.012')['-++++---+123.012']>>> re.findall(r'[-+]*\d+(\.\d+)?','-++++---+123.012')['.012'] 阅读全文
posted @ 2013-11-08 18:02 LisPythoniC 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 前几天看一个网友提问,如何计算'1+1'这种字符串的值,不能用eval函数.我仿佛记得以前新手时,对这个问题完全不知道如何下手.我觉得处理括号实在是太复杂了,多层嵌套括号怎么解析呢?一些多余的括号呢?而在没有括号的情况下,处理不同运算符之间的优先级又很头疼.而'**'这种占2个字符的运算符,还有着奇特的优先级规则,x**y**z应先计算y**z,并且如果z后面还跟着**的话,则不能先计算y**z..这是最难的地方!但是,今天我竟然把它实现了!而且是用最原始的函数实现的,它们是:str,s.isdigit,s.find,s.count,dict,floatif,i 阅读全文
posted @ 2013-11-08 00:40 LisPythoniC 阅读(992) 评论(0) 推荐(0) 编辑