def num(s,idx): return int(s[idx]) def plus(s): return num(s,0) + num(s,2) def cur(s,idx): return s[idx] def plus2(s): v = num(s,0) i = 1 op = cur(s,i) while (op == '+'): if (i + 1 < len(s)): i += 1 v += num(s,i) else: break if (i + 1 < len(s)): i += 1 op = cur(s,i) else: break return v
#!/usr/bin/env python # -*- coding:utf-8 -*- # Filename:test_expr.py import unittest from expression2 import * class ExprTestCase(unittest.TestCase): def setUp(self): return def tearDown(self): return def testNum(self): self.assertEqual(1,num("1",0)) self.assertEqual(3,num("1+3",2)) self.assertEqual(5,num("1+3+5",4)) return True def testPlus(self): self.assertEqual(4,plus("1+3")) self.assertEqual(9,plus2("1+3+5")) if __name__ == '__main__': unittest.main()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。