在Windows机器上运行python vs Linux

问题描述:

我有兴趣学习python,但我的Linux技能很糟糕。我想用python和django来开发一个大中型的web应用程序,但是害怕这个软件可能无法在Windows系统上运行。在Linux和Windows上运行python有没有性能差异?在开发应用程序时有什么需要注意的地方。另外,我知道将C++库与python集成非常容易。这个说法仍然是真的代码是在一个窗口框?在Windows机器上运行python vs Linux

+1

别担心。对于初学者和专业人士来说,Python是一种伟大的语言。好消息是它可以安装在Windows上,因此您可以在熟悉的操作系统上学习。这是超便携的。 – Sean 2010-09-22 01:33:14

+1

你不再需要“技能”来运行Linux了。安装(K)Ubuntu。安装比窗口更容易 – Falmarri 2010-09-22 04:36:42

不要告诉任何人这个,但我已经在Windows上运行python/django。它可以正常工作,但性能并没有比你期望的更糟糕。我使用MySQL,它安装没有问题。我不得不摸索如何管理它(没有好的ol'sudo /etc/init.d/mysql restart,但我最终发现了一个图形界面来做我需要的东西。

+0

为了我们其他人的利益,您可以指定该图形界面吗? – 2010-09-21 23:39:18

+0

@蒂姆耶茨。这就像'services.msc'什么的。你必须去'开始'菜单上的可爱的小跑选项,然后输入它。我不是一个真正的Windows人,我宁愿忘记我生命中的那一部分。 – aaronasterling 2010-09-21 23:55:10

+0

@TimeYates,@AaronMcSmooth我知道这可以通过services.msc完成。您必须按 +'r'才能获得运行对话框。在那里,输入“servcies.msc”(不带引号),它应该将您带到系统上所有服务的列表(它还列出它们是否正在运行以及它们在什么条件下启动)。有一个“重新启动”按钮,可用于重新启动任何选定的服务 – inspectorG4dget 2010-09-22 02:54:59

Python程序非常容易携带,大部分时间你的代码都可以工作在任何具有相应版本的python的平台上都可以使用。

有一点要注意,尽管是文件路径处理,Linux,Windows,Mac等使用不同的路径方案,所以你不应该把它们当作字符串来处理;而是使用os.path函数来加入,分割等。

最终在时序,线程,处理,I/O方面有一些微小的性能差异,但它们并不是什么不用担心。

集成Python和C++很容易;唯一的问题是在C++方面,即你将不得不重新编译C++代码。

应该不是问题。有些人甚至在Windows上托管Python + Django。

我一直在Windows和Linux上工作Py。我喜欢Linux因为几件事情:

  1. virtualenvs - 一旦你开始使用virtualenvs,没有回头路。
  2. SHELL - CMD在django中执行python/management命令时非常令人沮丧。另外,你应该每次都添加python.exe :)。
  3. ipython在Linux上运行得更好。
  4. GeoDjango在上次检查时无法在Vista/7上运行。我花了3天试图设置它。只是为了比较,我在20分钟内在Linux中设置了GeoDjango-able开发环境。
  5. Linux是免费的:)
  6. 虽然在使用python跨平台时没有明显的性能影响或不兼容性,但Linux for python开发的好处大大超过Windows。这更舒适,肯定会提高您的生产力。
  7. ...

恕我直言Linux是Python开发的明智之选。

  1. 您所担心的软件不适用于Windows,实际的Web应用程序或您的开发环境。如果你的意思是IDE,那么我不会担心,有非常好的python IDE的Windows,至于另一个讨论所有在一起的Web应用程序

  2. 声明“这是非常容易集成C + +库与Python “是不准确的,有很多方法可以做到这一点,但它们并不容易,我个人只尝试过SWIG,但还有很多其他的选择(例如Boost.Python),我不相信那么简单起床,并与其中的一些工具在Windows enviromeny用了类似的MinGW或Cygwin的运行至少痛饮与* nix中内置记

但害怕该软件可能无法在windows系统上正常运行。

您的软件将工作。 Windows操作系统可能无法正常工作。但那是Windows,而不是Python。

我们在Windows上开发100%。我们完全测试:Windows上的单元测试,集成测试和用户验收测试。 100%。

我们在Windows上为生产部署0%,在Linux上部署为100%。

我们在Windows特定的单元测试中有几个(少于6个)差异。

该应用程序没有变化。它适用于Apache或不。它适用于SQLite或MySQL。

+4

使文件路径与操作系统无关的秘密是什么?例如,我总是在字符串中切换'/'和'C:\\'。 – iX3 2016-02-11 04:20:26

+0

@ iX3'os.path'并使用相对路径。 – 2016-07-06 10:29:49