文章列表
今天看了一遍《C++沉思录》的第八章,作者使用c++实现了表示算术表达式的树。
就是像 (-3)*(3+3)的树就是:
然后,我就用python实现了一下。因为python与C++不同,(作者使用了句柄类),我这里就没考虑这么多。
下面是实现:
# -*- coding:utf-8 -*-
class One_node(object):
def __init__(self,n):
self.n=n
def __str__(self):
return str(self.n)
class Unary_node(objec ...
直接贴代码了:
import inspect
import dis
def howmany():
f=inspect.currentframe()
f=f.f_back
dis.disassemble(f.f_code,f.f_lasti)
n=ord(f.f_code.co_code[f.f_lasti+4])
print n
return range(n)
if __name__=='__main__':
x,y=howmany()
print x,y
此次的dis是我用来调试用的,相 ...