学习任何一门语言都是从入门(1年左右),通过不间断练习达到熟练水准(3到5年),少数人最终能精通语言,成为执牛耳者,他们是金字塔的最顶层。虽然万事开头难,但好的开始是成功的一半,今天这篇文章就来谈谈如何开始入门Python。只要方向对了,就不怕路远。
设定目标
当你决定入门 Python 时,需要一个清晰且短期内可实现的目标,比如通过学习找一份初级程序员工作,目标明确后,你需要了解企业对初级程序员有哪些技能要求,下面是我从拉勾网找的一个初级 Python 工程师的任职要求:
1、熟悉 Python 及常用的 Web 开发框架;
2、至少熟悉一种数据库的使用,如MySQL、mongodb、redis等;
3、熟悉 Linux 操作系统及常用命令;
4、良好的编码习惯和文档编写习惯;
做 Python 开发除了熟悉语言本身之外,还需要掌握很多相关联的技能,好比打NBA,你不光要学如何投篮,还要练习力量、技战术等一整套东西。所以,一个普通 Python Web 开发工程师需要掌握的技能包括至少一个Web框架,比如:Django、Flask、Tornado,做业务系统离不开数据库的支撑,另外,还需要对Linux系统的基本操作和常用命令有所了解,因为以后你写到程序基本上都会运行在Linux平台上。
接下来我从这几个方面逐一介绍
Python3?
python3 官方文档下载地址:http://www.gooln.com/document/22338.html
不少新手总是纠结是学 Python2 还是 Python3,就像手里同时有包子和馒头,不知道先吃哪个,这种纠结完全就是徒增烦恼,因为它们是同一种语言,只有少部分地方语法不兼容,尽管目前大部分公司还在用 Python2,但是 Python3 逐渐成为主流已是不争事实,毕竟后者性能方面更占有优势,官方也在力推Python3。所以毫不犹豫地选择 Python3 吧,最多花一天的时间能把 Python2 中特有的内容搞懂。
开发工具
工欲善其事必先利其器,做 Python 开发的 IDE(编辑器)层出不穷,我只推荐 Pycharm 和 Sublime,它们的学习成本非常低,网上找一篇教程看了基本就能上手,Vim、Emacs 这样的远古神器还是放以后再去了解吧。另外,今后你所遇到的 90% 的问题都有可能通过Google和StackOverflow来解决。
学习资源
网上入门资源琳琅满目,一本好书能为你指点迷津。快速了解 Python 可以看一下 Learn Python in Y minutes 这篇文章。但千万不要被标题所迷惑,一门语言不可能几分钟就能学会,看完之后应该会对Python 有个初步的印象,照着示例操作完之后,你就要选择一本合适入门的教程,《A Byte of Python》是一本值得推荐的书籍,来说说我推荐这本书的理由。
《A Byte of Python》的中文名叫《简明 Python 教程》,这本书的最新版已经是第10版,基于 Python3.5,所以不担心是否知识落后的问题,其次,这本书的厚度152页非常适合入门,涵盖了 Python 入门所有内容,相对那些五六百页的大部头书来说非常精简了,2个星期能啃完。还有最重要的一点,这本书是免费的,在公众号python之禅回复 "byte" 免费获取《A Byte of Python》不同格式的电子书。
这本书看完之后,你应该能设计出简单程序出来。再推荐一本书《Python学习手册》作为进阶学习,内容相对要更深入,适合有一定编程基础的人阅读。
做Web开发,HTML、JS、CSS 是必须有所了解的,作为前端技能,不一定要深入了解,做到能写基本的HTML代码就够了,此外,你还需要了解 HTTP 协议(推荐《图解HTTP协议》)。目前比较主流的Web框架有 Django、Flask、Tornado,各自都有各自的特点,Django 文档丰富、Flask 短小精悍、Tornado 异步并发。这里推荐使用 Flask,推荐书目《Flask Web开发:基于Python的Web应用开发实战》
Linux 推荐《快乐的 Linux 命令行》,同样是一本非常经典的入门迷你书,没有太多理论,范围也不太宽,公众号回复 “linux” 免费获取。
MySQL只推荐一本《MySQL必知必会》,不到250页的小册子,实践性很强,没有什么艰深晦涩的理论堆砌,看完这本书基本入门数据库了
最后
只看书不会进步,思考和实践才有成长,自学编程是一个比较枯燥的过程,如果没有正向反馈,学习的积极性很容易被打压下来,所以你应该积极参与到相关的技术圈子中去,尝试去解答力所能及的新手问题,向圈子中的大牛们寻求帮助,善于总结自己所学到的东西,分享给更多的人,记住,你不是一个人在战斗。
以上这篇新手如何快速入门Python(菜鸟必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。
本文向大家介绍javascript入门之数组[新手必看],包括了javascript入门之数组[新手必看]的使用技巧和注意事项,需要的朋友参考一下 一、定义数组。 定义数组有两个方法: 1、var arr1 = []; //定义一个空数组 2、var arr2 = [1,2,3,"str1","str2"]; //定义一个有5个元素的数组。 3、var arr3
本章节属于新手上路内容,本章节不会对Threejs几何体、材质、相机、模型、光源等概念详细讲解,会首先提供给大家一个注释非常详细的案例源码。本章节的案例源码实现的三维效果虽然非常简单,但是可以完整地展示Three.js的整体结构。 本章节的教学思路是先给你展示一个小案例的源码让你体验测试,然后从整体对每一块的功能进行整体介绍。和传统教学思路不同,传统的教学方式往往是对一个新技术的所有基础知识点逐步
本文向大家介绍javascript入门之string对象【新手必看】,包括了javascript入门之string对象【新手必看】的使用技巧和注意事项,需要的朋友参考一下 一、String 对象 String 对象用于处理文本(字符串)。 二、构造函数 new String(value) //构造函数 function String(value) //转换函数 三、属性
这串代码后 这个sym的变量我该怎么修改
系统搭建好了,应该如何用起来,这节给大家逐步介绍一下 查看监控数据 我们说agent只要部署到机器上,并且配置好了heartbeat和transfer就自动采集数据了,我们就可以去dashboard上面搜索监控数据查看了。dashboard是个web项目,浏览器访问之。左侧输入endpoint搜索,endpoint是什么?应该用什么搜索?对于agent采集的数据,endpoint都是机器名,去目标
quickstart 本教程假设你从头开始,没有Kafka和ZooKeeper历史数据。 quickstart_download 下载 0.10.0.0 的正式版本并解压。 > tar -xzf kafka_2.11-0.10.0.0.tgz > cd kafka_2.11-0.10.0.0 quickstart_startserver Kafka依赖ZooKeeper因此你首先启动一个ZooKe