我正在用 Python 开发一个新的开源软件,想知道应该使用 Python 2.x 还是 Python 3.x。
它将包括一个复杂的图形用户界面(GUI),处理大量数据的复杂科学算法。我需要至少使用 Numpy、Scipy、PyQT4、PyOpenGL、h5py 和 Matplotlib(如果需要)。首次发布计划在 2013 年,未来几年还会有更新和扩展。
这个软件将被科学家使用,他们不一定具备计算机科学背景,而且将在各种计算机上使用(Linux、Windows、Mac...)。有些机器可能比较旧。
如果选择 Python 3.x,我担心软件和第三方库的安装可能会更加复杂,特别是在已经安装了 Python 2.x 的旧系统上。最好的情况是,类似 RPM 包(或 Windows 安装程序)能够在大多数系统上提供 Python 和外部库的安装,这样就不需要编译所有的东西。此外,我不知道 3.x 分支是否足够成熟。
如果选择 Python 2.x,将来如果 2.x 分支停止维护了,我可能需要将软件移植到 Python 3.x。
哪个选项最好呢?