我应该在运行Web应用程序的Raspberry Pi上使用哪个Python版本?

时间:2014-07-21 07:03:00

标签: python raspberry-pi

我在Python世界中是全新的。

我想创建一个包含一些Python代码的Web应用程序。我想用Python来控制Raspberry Pi输入和输出等。

有Python 2和Python 3可用。我已经阅读了一些有关这些版本的内容,但我仍然不确定应该使用哪个版本。

3 个答案:

答案 0 :(得分:3)

除非您有特定的理由坚持使用Python 2(例如尚未移植的框架),否则您确实正在使用Python 3。

引用Python wiki“Python 2.x是遗留的,Python 3.x是语言的现在和未来”

答案 1 :(得分:1)

关于Python和Raspberry Pi主题的大部分书籍都是指Python 3.x.我发现很多在线课程和书籍都更注重3.x而不是2.7。除非您在Python 2.x上的公司工作并且没有计划去3.x,否则您最好不要学习Python 3.x.

答案 2 :(得分:1)

这取决于您将要使用的Web框架。

其中一些可能在Python 3上的功能有限但仍然值得使用。

这可能是Flask的情况,它非常轻量级,提供您所需要的一切,但根据重度用户缺少一些小细节完全支持Python 3.这种情况很可能在附近得到解决未来,但如果你想现在开发它,最好使用适合你的web框架的Python版本。

对少数(并非所有)网络框架的评论

Django的

非常受欢迎,但会迫使你以Django风格做事。

最终的解决方案可能会变得有点重,然后真的有必要,这可能是Raspberry Pi的一个问题,它的资源非常有限。

烧瓶

也很受欢迎(尽管没有Django那么多)。

让您自由地只使用您需要的东西。

非常好的教程。

大多数应用程序在Python 2和Python 3下运行,很少(支持)库被告知尚未完全移植(我不能完全服务于哪些)。

的CherryPy

简约的Web框架,但具有非常好的内置HTTP和WSGI服务器。

找到好的教程并不容易,最好是使用(现在有点旧)关于CherryPy编程的书。

注意:默认情况下,应用程序是在调试模式下开发的,代码是从磁盘自动重载的。此磁盘活动可能会减慢RPi并消耗一些能量,因此如果您遇到麻烦,请将应用程序设置为生产模式。

结论

我目前的选择是在Python 2.7上使用Flask,但这部分归因于我在Python 2.7中开发的许多遗留代码。

您应该决定要使用哪个框架并检查Python 3支持的状态。