Python 2.7和3.3之间的语义差异是什么?

时间:2013-04-15 07:37:38

标签: python-2.7 python-3.3

我写了一个相当大的项目。我用Python 3.3运行它,它可以工作。

如果我用2.7运行它,没有关于语法的抱怨,但程序不起作用(输出不是预期的)。

我不希望任何人通过几千行代码来帮助我找到差异。我只是想知道在哪里可以找到在2.7和3.3中语法上有效但在语义上不同的事物列表。由于Python版本之间存在大量差异,我除了能够找到对我有帮助的东西外。

我大量使用发电机和corountines。除此之外,没有什么花哨的东西(没有内省等)。

我意识到这是广泛的,缺乏代码;我只是对如何学习差异感到有些不知所措(我不认为通过那些记录不完整的代码可以帮助任何人)。

编辑:但是,如果我错了,那就是https://github.com/paulddraper/internet-simulator。 它模拟TCP连接(作为学校项目启动)。我使用corountines来编写函数,好像它们是多线程的一样。无论如何,如果使用Python 3.3在main.py内运行src/,我得到的输出与使用Python 2.7运行它的输出不同。

1 个答案:

答案 0 :(得分:1)

找到它。

要获得Python 3的除法行为,我需要在2.7中添加from __future__ import division

我已经知道了,但出于某种原因,当我试图想到语义差异时,我不会想到它。