Python到底有多慢?
其实如果是性能要求不高的应用的话,快慢表现得不会太明显。举个例子吧,原来大学期间毕设需要对多点之间路径选择顺序进行优化,查阅多方资料后决定使用蚁群算法选出最优路径。尴尬点就在这个蚁群算法里发生了。
首先用的10个坐标点模拟城市的位置,因为平时使用Python比较多一点也较为熟悉,所以首当其冲的选择了Python作为实现蚁群算法的编程语言,但是在第一次运行时差点就等睡着了。猜猜有多久,6分钟多,这就是效率(运行速度)的可怕之处。总不能在毕设答辩里让答辩老师等6分钟来选个最优路径,恐怕是要被挂呀。所以后来蚁群算法这一块使用c语言进行了优化,运算出结果不到1分钟。没有对比就没有伤害,经历了这件事后,我深深的体会到了Python执行效率的可怕之处。
但是作为一门简洁易懂的解释性语言,抛去了指针等复杂的内容,使开发者将更多的注意力集中于解决问题的方法或思路上,而不是编程语言的技术本身上。所以在这些优点的支撑下也可以原谅它的执行效率。
有可能有人有疑问为什么C语言、Java语言的执行效率都比Python高呢,其实这和一门语言的底层代码有关系。C语言是对汇编语言的二次开发,而Java大部分是对c和c++的二次开发,然而我们的Python则可以分为两种情况,一种是cpython,另一种是jpython分别是对c和Java的二次开发,所以效率低于这两种语言不言而喻的。原来看到消息称,为解决Python的效率问题,官方打算重新开发Python的底层代码,最近也没有看到相关消息,毕竟这个工作量非常巨大。
如果交互操作多,系统的实时性要求高,对系统执行效率要求高,图形图像绘制复杂的话,建议用C++。但如果是实验性程序,需要用很多高级的科学计算库,程序处理实时性不高的话,建议用Python。Python的精髓是有强大而其它语言不可比拟的科学计算程序包。诸如机器学习、统计等程序包。c++的精髓是程序执行效率高,程序灵活,人机交互设计,数据库操作,复杂图形绘制处理方面都很适用。Java的精髓是web设计,手机App,跨平台的服务器处理。一句话,用什么语言看需求而定。
谢邀。有博主做过测试,几种语言下Python还是比较慢的,具体我们来看看。
因工作需要,学过几门编程语言,有些时候需要关注程序的运行速度问题,所以特意测试了几门语言的性能。
测试电脑的配置:
CPU: i3-2120 @3.3GHz
RAM: 16GB
OS: Win7 64bit sp1
测试程序:
测试的程序包含循环,函数调用,逻辑比较,数学运算,字符串处理等
1, Java
Java版本:
java version "1.8.0_65"Java(TM) SE Runtime Environment (build 1.8.0_65-b17)Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)
Java程序:
运行:
javac Main.javajava Mainjava time: 1793ms
2, JavaScript
Node版本:
v6.2.0
JavaScript程序:
运行:
node a.js
nodejs time:5474ms
3, Lua
Lua版本:
lua有两个,一个是lua5.2,一个是luajit 2.1.0-beta2
lua程序:
运行:
luajit a.lualua time: 2531ms
lua52 a.lualua time: 28447ms
4, Python
Python版本:
Python 2.7.10
Python程序:
运行:
python a.py
Python time: 24.35s
5, PHP
PHP版本:
PHP7
PHP程序:
运行:
php time: 10000ms 左右
总的来看:
java 1793ms
js 5474ms
luajit 2531ms
lua53 28447ms
python 24.35s
php 10000ms
虽然有其他环境变量原因,不过可见python还是会慢一点,不过正常项目中的瓶颈大多不会是程序运行时间,所以Python还是很好用的,如果要性能,直接撸C++吧哈哈。
如果你对学习人工智能和深度学习感兴趣,可以订阅我的头条号,我会在这里发布所有与算法、机器学习以及深度学习有关的有趣文章。
GitHub:
里面有大量学习资源和读书笔记,欢迎大家Follow和Star。
(码字不易,若文章对你帮助可点个赞~)
哈,python总是被人在意的是性能和线程问题。
说实在的,只有你把代码写好了,才有对比性能的要求。还有主要得看业务,一个小说网站需要的性能是python决定的吗?根本就是服务器和带宽来决定的。
大连本地哪里学java更好?
大连计算机培训的机构有很多家,个人觉得你可以挨家去看看,自己去体验一下,这个东西萝卜白菜各有所爱,但是是选择上要注意下面的几项:
1、小班级:班级人数最好别超过20人,人多和大学上课没区别,大学你学习了吗?到这也一样,老师根本管不过来,所以人数一定要越少越好。
2、授课方式:一定得老师面对面授课啊,千万别整什么远程视频上课,老师都不在身边,有问题问谁呀,要是就听听老师讲课就会了,那可以回家自学了,网上视频老多了。老师面对面,全职,随时有问题随时解决。
3、项目:学这个东西做出项目是最重要的,上班之后给公司干活也是做项目,能干活的才是好手,必须要有企业需要的技术,真是的项目,自己独立做一个项目最好,项目越复杂越好。
4、学不会重学,就业满意为止:这可不是嘴上说说,签协议,盖章的,才生效,或者你可以问问他家老学员,是不是学不会重新学直到学会,就业是不是负责,口碑很重要。
Ps:能把退费标准公示出来的比较正规良心企业,有朋友是在海事大学那边学习的,具体叫什么不清楚,他说挺好的,老师负责,你可以去看看对比一下。
感谢邀请。能否学好Java和你在哪个城市没有必然的联系。这取决于你的基础,态度,努力程度和学习方式。现在互联网这么发达,你可以在网上学习,再结合自己看书,如周围有熟手请教则更好,加油吧。
长大连本地的小编没有亲身去考察过也不是太了解,但是,做为一个在IT教育行业待了很长时间的人来说,对于Java培训机构的选择还是有一些了解的,今天这里就为大家简单的分享一下,希望可以帮助大家选择一个好的培训机构。
如何选择一个好的Java培训机构?
1、选择培训机构的时候,不要被网上的一些宣传信息所迷惑,尤其是零基础的学员一定都不要太过于着急进行报名,对于培训机构宣传的就业信息和包就业以及保底工资这些都要去实际考察分析过后在做决定。
2、对于一些只是靠口头宣传的,拿不出实际和培训相关的课程大纲或者是老师信息的要避而远之,这样的培训机构多数不是正规的。
3、对于在网上或者是其它渠道了解到的关于一个Java培训机构的信息要进行实地考证,只有自己亲自去培训机构的实地校区进行考察,得到的情况和网上得到的信息是差不多的,那么这样的机构就是比较值得信赖的。
最好,希望想要进行Java培训学习的你通过这边文章的阅读,对你的选择有一定的帮助。

