python中def中def是如何实现的?
关注者
36被浏览
68,8996 个回答
这要看你怎么理解“定义”
其实py的作法是:
先编译整段代码,每个函数的代码部分弄成一个code对象
然后执行def这句的时候,把code对象和当时一些信息打包一个func对象,赋值给f1code对象是唯一的,但func对象是实时生成的
你先定义好这些函数,建立起它们和n的映射,然后使用就好了。
具体可以把它们放到字典里,作为值。或者定义一个类,作为类的方法。
根据n大小dispatch用二分法,if else语句块多了很丑。