我正在设置一个类似Matlab的环境,所以我下载了最新版本的python(x,y)及其附带的所有模块,并下载了python 3.4.1。python(x,y)不运行最新版本的python吗?我注意到,因为python(x,y) shell不会自动将数学运算计算成浮点数,这是python 2的不同之处。X和3。我只需要等待(x,y)的新版本还是我在这里错过了什么?
可以使用以下命令使Python 2的行为与Python 3的w.r.t.除法相同;
from __future__ import division
来自__future__
的Imports应该位于文件的顶部。可能有一种方法可以自动加载这个表达式(我知道这在IPython中是可能的),但我不熟悉python(x,y)。
要了解更多关于Python的知识,请访问python.org上的教程。建议使用最新版本的Python3。
由于您处于转换过程中,请查看SciPy (http://www.scipy.org)和Sage (http://www.sagemath.org/tour.html)。这些可能更适合你需要解决的问题。
如果您在终端上做很多交互工作,请查看ipython (http://ipython.org)。
关于除法运算符,在Python2中默认为整数除法,但在Python3中只是普通除法。你可以通过在启动解释器时使用-Q标志来改变这一点。(Do: python——help)例如:
$ python2.7 -Qnew
Python 2.7.6 (default, Nov 18 2013, 15:12:51)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 1/2
0.5
>>>
$ python2.7
Python 2.7.6 (default, Nov 18 2013, 15:12:51)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 1/2
0
>>>
$ python3.4
Python 3.4.1 (default, May 21 2014, 01:39:38)
[GCC 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 1/2
0.5
>>>
感觉最初的问题是关于python(x,y)分布和python 3的,我的(长)回答是:
我使用这个发行版很多年了,我很喜欢它。但对我来说,似乎没有计划升级它以包含python 3环境。
这些天我推荐Anaconda发行版/项目(https://www.anaconda.com/)。非常类似于python(x,y)-的想法,但更好地维护和支持"最新的一切"。