• 大发888注册就送58大发888注册就送58【单日提款限额高达600W】

  • 发布时间:2016-01-22 06:54 | 作者:yc | 来源:互联网 | 浏览:1200 次
  • 大发888注册就送58大发888注册就送58【单日提款限额高达600W】

    # calc.py - # a simple calculator without using eval

    def main():

    while true:

    number: '[\d.]+';

    neg: '-' atom;

    #_auth by kk

    这篇文章出自 “microsoft” 博客,请必须保存此出处http://.blog.51cto.com//

    try:

    ?add: (add add_symbol)? mul;

    neg= lambda self, exp: -exp.tail[0]

    ws: '[ \t]+' (%ignore);

    #!/usr/bin/env python

    """)

    > 1+2*-(-3+2)/5.6+3

    number= lambda self, exp: float(exp.tail[0])

    class calc(stransformer):

    break

    print(calc.transform(tree))

    add_symbol: '\+' | '-';

    [root@django opt68399.com]# python cacl.py

    >

    @atom: neg | number | '\(' add '\)';

    from plyplus import grammar, stransformer

    大发888注册就送58大发888注册就送58【单日提款限额高达600W】

    arg1, operator_symbol, arg2 = exp.tail

    4.4

    __default__ = lambda self, exp: exp.tail[0]

    operator_func = { '+': op.add, '-': op.sub, '*': op.mul, '/': op.div }[operator_symbol]

    简介

    calc = calc()

    tree = calc_grammar.parse(s)

    import operator as op

    # -*- coding: utf-8 -*-

    except eoferror:

    calc_grammar = grammar("""

    s = raw_input('> ')

    mul = _bin_operat4685.cqmor

    ?mul: (mul mul_symbol)? atom;

    不废话,直接上代码:

    把稳,因为一开始是木有plyplus模块,以是小伙伴们记得用pip install plyplus来进行装配,终极的感化如图

    mul_symbol: '\*' | '/';

    start: add;

    add = _bin_operator

    if s == '':

    main()

    def _bin_operator(self, exp):

    break

    return operator_func(arg1, arg2)

    在这篇文章中,我将向咱们演示若何向一个通用核算器相同解析并核算一个四则运算表达式当咱们完毕的时分,咱们将获得一个能够处置惩罚比如 1+2*-(-3+2)/5.6+3格式的表达式的核算器了当然,你也能够将它拓宽的更为强壮

  • 相关内容

友情链接: