如何自学 Python
转眼已到三月,感觉时间过的飞快,作为一名普通的程序员,总觉得不应该这么颓废,趁着还有精力学习,总觉得该学点什么。
于是有了这样一个决定,学习一门新的语言。
一、学习何种语言
其实一直很纠结去学习哪种语言,说实话,如今技术迭代真的很快,想要不被淘汰,就要不断自我充电。
在选择语言方面,我考虑了这么几点:
1.学一门热门语言
全世界差不多有600多种编程语言,主流的有20多种。
为什么要选择热门语言呢?首先它的社区一定很活跃,有一群人在,在你自学的道路上能帮助你很多。其次,网上有很多较为全面的参考资料,源码项目供你学习,同时一些大牛的博客心得你都可以参考学习,大大降低了自学成本。
2.学一门高级语言
对于我来说,首先自身的基本功相对来说没有那么扎实。其次,对我来说,编写代码最终是为了解决实际的应用问题。
我不是研究底层,开发高效率的应用系统那块料的人。所以找一门高级语言,通过学习,通过利用第三方库,第三方组件,自己去处理拼接从而开发出满足自己需求的小工具,这对我来说意义比较大。
3.最重要的,学一门你感兴趣的语言
如果你学习的过程中一点兴趣都没有,那你是痛苦的,同时学习的效果也一定不理想。
二、为何选择Python
最初我有三个方向,java、js、python。
至于为什么最后选择了Python,也是最后根据自己的实习情况来的。
首先排除了java,因为自己本身是c#方向的,再学一门java其实对于自身来说需求不大,java能开发的c#也基本都能够满足,复杂度来说两者也较为接近,兴趣度上也不是很高。
其次是js,目前来说js真的越来越火了,身边的很多同时也在学,对于纯后端的我来说确实学习js也不错,自己本身也有一定的基础。js也能开发一些有趣实用的脚本,对于工作和生活都有一定的帮助。
但是后来为什么没有选择呢,我想是因为从心底来说,还是更想学Python吧。
Python目前来说真的很火,很多产品和其他职业的人或多或少也都会点,其实Python真的可以做很多事情,主要也希望通过学习Python去开发一些有意思的小工具,丰富下生活,提高下工作效率。
三、学习计划
学习是一个长期和坚持的过程。既然决定学习,打算每天花1-2个小时的时间去学习Python,周末的话投入4小时左右。
1.第一个周期:了解
主要系统的了解下Python,整理下Python到底可以做哪些事。
整理下比较有用的学习资料,博客,社区,网站等,方便自己的学习。
2.第二个周期:基础
搭建环境,学习语法,并能初步的习惯Python,使用Python
3.第三个周期:实战
利用Python去开发一些小工具,由小到大,同时也会记录下我学Python的过程,作为自己的积累,也希望对其他要学Python的人有一些借鉴。
四、总结
虽然学习是件痛苦的事情,但付出总是有回报的,亲们,有兴趣一起从零开始学习的欢迎一起交流,互相监督。
如果我是小白,我满足什么条件可以学Python呢?
再给大家分享之前呢,我介绍一下我弄的一个学习交流群,有什么不懂的问题,都可以在群里踊跃发言,需要啥资料随时跟我说,入门资料什么的都有,无偿分享。这个python群就是:小编期待大家一起进群交流讨论,讲实话还是一个非常适合学习的地方的。各种入门资料啊,进阶资料啊,框架资料啊爬虫等等,都是有的,风里雨里,小编都在群里等你。
——会使用电脑,但从来没写过程序;
——还记得初中数学学的方程式和一点点代数知识;
——想从编程小白变成专业的软件架构师;
怎样才能在python界占有一席之地呢?
除了上述的三条,还要有:
——6个月早上9:00到晚上10:30全力以赴不间断学习的毅力
——不骄不躁不退缩不认输的决心
如果我是小白,学Python要准备什么呢?
学习Python必不可少的一部肯定是工具,一种是编码器,一种是解释器:
编码器就是Python。目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的,因为现在Python正在朝着3.x版本进化,在进化过程中,大量的针对2.x版本的代码要修改后才能运行,学习群所以,目前有许多第三方库还暂时无法在3.x上使用。
IDE工具。IDE集成开发环境(简称IDE)软件是用于程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。
常见使用的工具是:
Pycharm: PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。
IDLE: Idle 是一个纯Python 下使用 Tkinter 编写的相当基本的 IDE。
Ipython: ipython 是一个python 的交互式 shell,比默认的pythonshell 好用得多。
第一阶段Python基础与Linux数据库。这是Python的入门阶段,也是帮助零基础学员打好基础的重要阶段。你需要掌握Python基本语法规则及变量、逻辑控制、内置数据结构、文件操作、高级函数、模块、常用标准库模块、函数、异常处理、MySQL使用、协程等知识点。
学习目标:掌握Python基础语法,具备基础的编程能力;掌握Linux基本操作命令,掌握MySQL进阶内容,完成银行自动提款机系统实战、英汉词典、歌词解析器等项目。
第二阶段WEB全栈。这一部分主要学习Web前端相关技术,你需要掌握HTML、CSS、JavaScript、jQuery、BootStrap、Web开发基础、VUE、Flask Views、Flask模板、 数据库操作、Flask配置等知识。
学习目标:掌握WEB前端技术内容,掌握WEB后端框架,熟练使用Flask、Tornado、Django,可以完成数据监控后台的项目。
第三阶段数据分析+人工智能。这部分主要是学习爬虫相关的知识点,你需要掌握数据抓取、数据提取、数据存储、爬虫并发、动态网页抓取、scrapy框架、分布式爬虫、爬虫攻防、数据结构、算法等知识。
学习目标:可以掌握爬虫、数据采集,数据机构与算法进阶和人工智能技术。可以完成爬虫攻防、图片马赛克、电影推荐系统、地震预测、人工智能项目等阶段项目。
第四阶段高级进阶。这是Python高级知识点,你需要学习项目开发流程、部署、高并发、性能调优、Go语言基础、区块链入门等内容。
学习目标:可以掌握自动化运维与区块链开发技术,可以完成自动化运维项目、区块链等项目。
按照上面的Python学习路线图学习完后,你基本上就可以成为一名合格的Python开发工程师。当然,想要快速成为企业竞聘的精英人才,你需要有好的老师指导,还要有较多的项目积累实战经验。
自学本身难度较高,一步一步学下来肯定全面且扎实,如果自己有针对性的想学哪一部分,可以直接跳过暂时不需要的针对性的学习自己需要的模块,可以多看一些不同的视频学习。
¶ 起步阶段
任何一种编程语言都包含两个部分:硬知识和软知识,起步阶段的主要任务是掌握硬知识。
°1 硬知识
“硬知识”指的是编程语言的语法、算法和数据结构、编程范式等,例如:变量和类型、循环语句、分支、函数、类。这部分知识也是具有普适性的,看上去是掌握了一种语法,实际是建立了一种思维。例如:让一个 Java 程序员去学习 Python,他可以很快的将 Java 中的学到的面向对象的知识 map 到 Python 中来,因此能够快速掌握 Python 中面向对象的特性。
如果你是刚开始学习编程的新手,一本可靠的语法书是非常重要的。它看上去可能非常枯燥乏味,但对于建立稳固的编程思维是必不可少。
如果真的很想学好Python,可以去机构学习下,千 锋 教 育全程面授,可以去参考参考。