Python入门很难吗?为什么越来越多的人都学Python?

python都说是最容易学习的编程语言,但是为什么还是有很多的小白在学习的过程中学的云里雾里,一天到晚都是报错,异常,这也怪不得会有那么多人说,学python是从入门到入土!其实一门编程语言不像语文那样。靠死记硬背就行了的,他是需要结合实战加上自己所掌握的知识来实现一个程序,这样学起来才有成就感,才能感觉学习编程语言不会枯燥!
第一次接触 python是在一节编程入门课上。其实,在此之前了解过它,所以在上课之前我对它的语法已经很熟悉了,但在上课之前我没有用它做过真正的项目。尽管对它没有太大兴趣,但我认为把它介绍给人们去学习编程还是很好的。我对它不是不喜欢,而是一种“无所谓”的态度。原因很简单:它里面有太多“魔法”。 c和java这些语言,对底层的行为描述的很清晰,python则完全相反。
另外,python结构松散:写大型复杂程序时,遇到规则严谨的程序结构体(比如每个文件一个公共类),比其他语言(比如java)要费些力气。但是,在这些方面 python给了你很大的自由。
我曾经和很多人做过很多项目,不同的人用不同的系统。就我而言,我经常在windows系统和linux系统之间切换。举一个实际的例子,有一个项目,我写了项目的自动测试脚本,结果发现只有我能用,因为是用powershell写的,而我是项目中唯一使用windows的。当时同事们自然认为bash是最好的,我还向他们解释powershell遵循一种不同的模式并且有它的强项(例如,它提供了.net框架接口),它是面向对象的脚本语言,和bash完全不一样。
毫无疑问,python确实有用很多的优点,每一个优点看起来都非常吸引人。但是,python并不是没有缺点的,最主要的缺点有以下几个:python的执行速度不够快。当然,这也不是一个很严重的问题,一般情况下,我们不会拿 python语言与 c/c++这样的语言进行直接比较。在 python语言的执行速度上,一方面,网络或磁盘的延迟,会抵消掉部分 python本身消耗的时间;
另一方面,因为 python特别容易和 c结合起来,因此,我们可以通过分离一部分需要优化速度的应用,将其转换为编译好的扩展,并在整个系统中使用 python脚本将这部分应用连接起来,以提高程序的整体效率。python的 gil锁限制并发:python的另一个大问题是,对多处理器支持不好。
如果读者接触 python时间比较长,那么,一定听说过 gil这个词。gil是指 python全局解释器锁(global interpreterlock),当 python的默认解释器要执行字节码时,都需要先申请这个锁。这意味着,如果试图通过多线程扩展应用程序,将总是被这个全局解释器锁限制。当然,我们可以使用多进程的架构来提高程序的并发,也可以选择不同的 python实现来运行我们的程序。python 2与 python 3不兼容:如果一个普通的软件或者库,不能够做到后向兼容,那么,它会被用户无情的抛弃了。在 python中,一个槽点是 python 2与 python 3不兼容。因为 python没有向后兼容,给所有的python工程师带来了无数的烦恼。