1

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

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

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

我大量使用了生成器和 corountines。除此之外,没有什么花哨的(没有自省等)。

我意识到这是广泛的并且缺乏代码;我只是对如何学习差异有点不知所措(而且我认为查看那么多记录不充分的代码不会对任何人有帮助)。

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

4

1 回答 1

1

找到了。

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

我已经知道了,但由于某种原因,当我试图考虑语义差异时并没有想到它。

于 2013-04-15T08:11:27.480 回答