哪个 Linux 发行版更适合 Python Web 开发?

7

哪个Linux发行版更适合Python Web开发?

背景:

我目前在Windows上进行开发,一切都很好,但我想将我的核心Python开发迁移到Linux上。我相信任何发行版都可以正常工作,但是否有人认为某个发行版比其他发行版更好呢?


3
我不这么认为。只要你不需要最新的版本,任何主流发行版都可以。 - GabiMe
9个回答

13

Python现在已经被广泛使用,并且在几乎所有Linux发行版上都已经自给自足,因此发行版大多不再重要。

如果你想专注于开发方面,我建议你选择Ubuntu。Ubuntu可以说是最完整、最适合用户的Linux发行版之一,可轻松进行系统管理,这样你就可以专注于想要解决的开发任务。

如果你有一个特定目标Linux环境(例如RedHat或其他环境),则应选择与目标环境相匹配的桌面发行版(例如RedHat选择Fedora,Gentoo选择Gentoo,Ubuntu Server选择Ubuntu等)。

否则,所有发行版均可使用。


对于开发,我建议使用Xubuntu(带有XFCE的Ubuntu),它拥有更少的“臃肿”,不会妨碍你的工作。 - hasen
1
Ubuntu 也非常喜爱 Python,并且拥有最新的 Python 版本。 - Beni Cherniavsky-Paskin
尽管有新版本的Python发布,但你必须等到下一个Ubuntu版本才能将其包含在系统中。这让我为等待Python 2.6而疯狂。 - LeafStorm
虽然这是正确的,但你可以用任何发行版的名称替换“Ubuntu”而不会失去意义。(当然,你可以在等待发行版的同时安装软件,但这更像是一种“自己动手”的事情。) - Travis Bradshaw
我以前用过Ubuntu,感觉还不错。我想知道在所有Ubuntu热潮中是否有我所不知道的东西。 - rmontgomery429
啊,不是的。一般来说,在Linux上进行开发时,特别是使用Python时,发行版就是发行版。Ubuntu使得通常会妨碍有效开发的事情变得更加容易,因此它是当前最受欢迎的选择。 / 我耸了耸肩。 - Travis Bradshaw

8

您的发行版应该具备Python 2.6。否则,这将成为一项选择性问题。

建议:绝对不要以root身份安装任何东西(例如:python setup.py install)。只能通过您所使用的发行版软件包管理器进行安装,并使用virtualenv作为用户来安装其他包。

Ubuntu有一个虚拟环境包,即使没有安装也可以使用。


谢谢你的好建议 - virtualenv 绝对是一个好的实践。 - rmontgomery429

2
使用最新稳定版本的Python发行版只能让您使用这些版本测试您的代码。如今,开发人员可以轻松地使用多个Python版本测试其代码。
Gentoo可能为您提供了最大的灵活性,可同时安装多个Python版本:
    (2.5)  2.5.4-r4
    (2.6)  2.6.6-r2  or 2.6.7-r2
    (2.7)  2.7.2-r3
    (3.1)  3.1.4-r3
    (3.2)  3.2.2

这样做不能在一些基于Debian的系统上测试一些非常受欢迎的旧版本。

pythonbrew 允许您在主目录中编译和安装多个Python版本,无需root访问权限。

由于 'tox' 的存在,使用多个Python版本轻而易举地测试您的代码。默认情况下,tox会找到您的系统python(s),但是您可以设置使用pythonbrew构建的自定义解释器。

以下是一个tox.ini示例,可用于Jenkins进行持续集成。通过这种设置,您可以安装jenkins然后 'su - jenkins' 并使用pythonbrew安装所有要测试的Python版本。

[tox]
envlist = py267,py271,py272

[testenv]
#You may need to change this. Are your tests here?
changedir=tests

#You can also use nose, etc., see documentation
deps=pytest
commands=py.test --junitxml=junit-{envname}.xml

[testenv:py272]
basepython=/var/lib/jenkins/.pythonbrew/pythons/Python-2.7.2/bin/python2.7

[testenv:py271]
basepython=/var/lib/jenkins/.pythonbrew/pythons/Python-2.7.1/bin/python2.7

[testenv:py267]
basepython=/var/lib/jenkins/.pythonbrew/pythons/Python-2.6.7/bin/python2.6

这很简单,无论你使用哪个Linux发行版都可以。

有关配置Jenkins的详细信息,请参阅Tox网站。


此外,您可以通过 eselect python ... 快速切换多个版本。 - vanthome

0

我正在使用Python在Cento 5.4和Fedora 12上工作,我感到非常高兴。

我还使用Eclipse IDE来编写Python和其他语言的代码,没有遇到任何重大问题。


0

我使用RHEL并且一直很满意,所以从这个角度来看,Fedora也应该不错。在家里我使用Debian,它非常好(虽然是无头的,所以没有网络)。

话虽如此,我认为你应该根据公司使用的情况或其他非Python原因选择一个发行版。我不认为你会在任何Linux发行版中遇到Python工具可用性的问题。


0

大多数主要的发行版都会包含Python和Apache,所以这只是一个选择问题。如果你是Linux新手,我建议选择Ubuntu或Fedora。两者都非常适合新用户,并且拥有出色的社区支持。


0

正如其他答案所提到的,Python 2.6解释器将在所有最近的Linux发行版中可用。这不应影响您的选择。

然而,您选择的IDE可能会消除一些可能性。您应该确保您选择的发行版有最新版本的IDE包,并且它经常更新。

例如,我喜欢在任何操作系统中使用Eclipse和PyDev开发Python应用程序,但是Ubuntu的官方软件仓库直到去年10月才更新到3.5版本,之前只有2006年发布的3.2版本。


0

任何桌面发行版,如Ubuntu、OpenSUSE、Fedora等都可以,但如果你想始终拥有最新版本,我建议使用ArchLinux。


0

我记得以前有一期播客采访了Guido Van Rossum和他的核心Python开发团队,其中一位核心Python开发者现在被Canonical雇用来负责Ubuntu发行版的Python集成。这就解释了为什么Ubuntu相比其他发行版更加Pythonic。

另一方面,Gentoo Linux发行版也将Python集成到其Portage软件包管理系统中。因此,我认为Gentoo和Ubuntu都是很好的Python开发系统,并且代表了光谱的两端。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接