当前位置:  开发笔记 > 编程语言 > 正文

Python的限制是什么?

如何解决《Python的限制是什么?》经验,为你挑选了3个好方法。

我花了几天时间阅读有关C++和Python的内容,我发现Python更简单易学.

所以我想知道真的值得花时间学习它吗?或者我应该花时间学习C++?

C++可以做什么而Python不能做什么?



1> e-satis..:

一些Python限制:

- Python很慢.它可以通过多种方式进行改进(参见其他答案),但裸骨cPython比C/C++慢100倍.

这个问题越来越得到缓解.使用Numpy,Pypy和asyncio,大多数性能问题都没有涉及,只有非常具体的用例才成为Python的瓶颈.

- Python可以打开任何东西.保护/混淆/限制Python代码真的很难.

- Python不是炒作.与Ruby不同,Python之间没有"酷潮",找到经验丰富的Python编码器仍然要困难得多,比如Java或PHP专家.

- 使用Python之后,许多语言似乎都很难用.你认为这很好,但相信我,并不总是如此.当你在Python项目之后必须使用Javascript时,你的眼睛会流泪至少3天.真的很难上手.

- 找到网络托管比使用 PHP等流行解决方案更难.

- 作为一种动态语言,您没有使用Java和Eclipse或C#和VS可以获得的非常方便的重构工具.

- 出于同样的原因,您不能依赖类型检查作为安全网.这就是为什么pythonistas倾向于遵循最佳实践并且比其他人更频繁地编写单元测试.

- 似乎我找不到具有良好代码完成的IDE.PyDev,Gedit,Komodo,SPE等等都没有做到尽善尽美.

使用Python 3类型的提示和工具,如PyCharm或Sublime Text + Anaconda,情况发生了很大变化.

- 最好的文档仍然只有英文版.有些人处理得不好.

- 你必须习惯语法.不仅你得到空格和换行而不是支撑,但你可以忘记长lambdas, - i和三元操作.

现在,对我而言,这些并不是不学习工具的理由,这种工具可以让你在享受更多乐趣的同时生产更多产品.但也许只是我:-)

老实说,鉴于:

C++更难学;

你可以用Python做任何你想做的事情;

在项目中使用Python可以获得更快的结果.

除非你有涉及C++的专业问题,否则你最好先学习Python,它更有动力.您以后仍然可以学习C++,它是系统编程,嵌入式设备等的有用语言.

不要试图同时学习两者,多任务很少结束.


+1实际回答被问到的问题.
我也喜欢Javascript,但非常喜欢非常辛辣的食物,我需要时间回到它而不哭.

2> Robert Rossn..:

这就是为什么值得学习Python的原因:

相对较少数量的问题受到算法速度的限制.相对大量的问题受到开发者速度的限制.


最好.点.永远.

3> int3..:

你为什么不问相反的问题?与C++不同,Python可以通过命令为您提供反重力和召唤灵魂import.另一方面,C++的'等价' #include- 只允许你得到一些无聊的I/O和数学库.

但是说真的.C++允许你做更多低级的东西,比如内核编程,并允许你编写运行速度更快的程序(大约 20x).您可以使用它来创建可以利用多核处理器的真实线程,而Python(由于其设计)通常只能在单个核心上运行其模拟线程.

恕我直言,你应该学习两个; 用于Web开发和快速和脏脚本的Python,用于编写系统代码,桌面应用程序的C++,以及对计算机有更好的低级理解.如果你刚刚开始,那么Python; 开始时要容易得多.

可以在此处找到关于速度差的更具体的测量.

编辑:好像我的多线程信息已经过时了; 请参阅John Paulett的评论.


使用新的多处理模块,单核警告不再适用.另外,像Jython和Ironpython这样的其他实现不像CPython那样受GIL的影响.
推荐阅读
小色米虫_524
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有