python语言入门自学-你是如何自学 Python 的?

听到很多人说要学习 Python,但是一问他们为什么要学,听到的基本都是 Python 现在很火,并不知道学来干嘛。这个回答尽量从大到小说起,先对 Python 应用的几个方向进行大致的说明,后面根据具体的方向,说一下我的一些学习体会。希望这个回答能让你意识到学 Python 的目的以及方法。

# 有哪些方向

Python 目前可以运用的方面很广泛,有网站后端、运维、爬虫、大数据、人工智能等等。网站后端开发主要是作为服务端为网站前端提供数据,平时我们常听说的网站流量大就涉及到后端相关的优化;运维主要是服务器维护;爬虫主要是从各个网站采集数据;大数据则是分析已有的数据,得到一些结论,为运营或者公司发展提供建议,比如我们平时看到的知名电商网站的智能推荐;人工智能包括深度学习方面的研究以及应用。当然我所说的这些都只是一种粗略的分类,他们之间还是有交集的。比如爬虫为大数据提供数据,人工智能可以作为大数据分析的一个工具。

# 语言基础

编程语言有很多,但都有很多共性,不管是 C、JAVA 还是 Python,我们只要有个一种语言的基础,其它语言我们都很容易入门。没有语言基础呢,学习这些共性就行了,至于各种语言的特别的地方,在实践中我们边用边学就行了。这些共性便是数据类型、流程结构、常用的运算符以及对文件和网络的操作。以 Python 为例,它的基本数据类型有布尔型、数字、字符串等基本数据类型,有 None 这个特殊类型,还有列表、字典等复杂类型;流程结构有三种:顺序结构、选择结构和循环结构;常用的运算符有加减乘除、大于、等于和小于等;至于对文件和网络的操作,看到示例后先记下来,需要使用的时候套一下就 OK 了。其实,掌握了语言的这些基本的共性,这门语言也算是入门了。

刚开始不要想一口吃成大胖子,先找基础的教程过一遍基础知识。这里我推荐廖雪峰的 Python 3 教程(谷歌/必应都能找到,我就不贴链接了)。

看的慢的同学估计要一周左右,这期间一直看也有些无聊,你可以试着运行教程中提及的作业。另外,你也可以到这个网站上面 Problems - CodeAbbey 去解一些简单的问题练练手。(当然这不是必要的,前面的教程的只要你看完并做了里面的练习也足够了。)

Python 之所以这么流行,就是拥有很多现成的库。前期不要学习太多的库,知道几个必要库的简单使用就好,比如 json 、urllib 等,其它的等遇到再去了解大致的用法,遇到库的特定问题再去深入理解。千万不要一来就想完全掌握某个库。

看完上面的教程,你对 Python 应该有了基本的认识。另外,对于 HTTP 等网络协议以及数据库等也有了一些了解。有了这些基础,就可以尝试下各个方向的学习了。

# 各个方向的入门

本节从各个方向选了一些例子。看到这可能有小伙伴会问,我方向都没定,我选择哪个方向的实践比较好呢。我觉得吧,这些虽然区分了方向,但都比较基础,不用太纠结,随便选几个就好。毕竟这些方向你都没体验过,你怎么知道你喜欢啥。而且部分基础的东西,不管哪个方向,其实都可能会用到,多了解一些也没坏处。当然,如果你有明确的目标时,比如我要做网站后端开发,你可以只看网站后端方向的例子,然后去找更大的项目,更复杂的例子去实践,当然这是后话。

Web 后端

这里介绍一个 Web 开发框架 Flask。它小且灵活,适合用来学习,入门从官方文档开始就可以了。(比较好找的链接我就不贴了,借助谷歌/必应很容易能找到。) />

按照红圈的先后顺序读读教程,Flask 的简单使用就会了。这个时候可以自己尝试写一个博客网站,遇到问题(比如登陆、连接数据库等)就谷歌/必应。

从零开始开始写第一个网站可能会觉得太麻烦,可以参考一个现成的。很多开发者都是从抄开始然后慢慢理解原理的。这时你需要 GitHub,像下面这样搜索 />

然后找一个顺眼的的小项目下载下来(这里看前两个结果都挺合适的),看看源代码,自己仿一个。这样你就能比较全的知道怎么解决特定的问题,比如登陆、访问数据库等等。

爬虫

这个应该是最能激起人的兴趣的,以前用这个批量下载漫画、下载学校网站上的图片等,特好玩。

爬虫,简单来说其实就几个步骤

(1)向目标网站发起请求

(2)得到响应

(3)解析响应

(4)存储数据

所以这个过程需要你掌握基础的 HTTP 知识,至少你得知道什么是请求,什么是响应吧。而解析响应的话,你就得大概了解 JSON 、 HTML 等文本格式的基础知识吧。存储数据那就可能接触到常用的关系型数据库 MySQL 以及非关系型数据库 MongoDB 吧。其实这里面的部分知识在上面的廖雪峰的 Python 3 教程中也有涉及,比如「Web 开发」里面有 HTTP 相关的知识,而「访问数据库」中有 MySQL 的相关知识。这个时候你再回去看相关的知识的话,印象必定更深刻。

这里我推荐我看过的一个视频教程,上面涉及的方方面面都有讲到。 /> /> />

看完这 2 个章节的话,爬虫已经入门了。后面的 2 个章节,你可以根据自己的条件选择是否看。

这时如果想自己自己仿一个应用出来,也可以在 GitHub 上搜索。 />

当然不要选择太大的,前期应该选一个适合自己的小项目。这里我推荐一个 GitHub 上的 laplace-vi/React-News-Board。这个项目就是一个信息聚合的应用,主要是从开发者头条和 GitHub 等平台爬取一些信息然后展示。

当然,如果有的朋友想爬国外的小视频,这也是可以的。不过自己去网上探索吧,这才是技术的魅力。

到这里,恭喜你,已经入门 Python 爬虫了。对于一些简单的信息类网站,你都可以拿下了。不过这些只是基础的基础,如果有登录或者反爬虫之类的难题,你就没辙了。如果要有更大的进步,就得自己去实践、自己去挑战了。

数据分析

入门的话推荐这本书,记住不要一直看,部分例子有必要手动敲一敲。 />

运维、人工智能等方向

我也基本没有这些方面的学习经验,大伙还是善用搜索引擎吧。不过人工智能这块相比于其他方向要有更高的门槛,对算法要求比较高。

# 小结

到这里,你已经了解了 Python 的基础以及一些简单的应用,已经入门了。不过现在才刚刚开始,你需要选择一个方面然后深入学习并实践,也就是多看书多敲代码,才能有比较快的进步。

# 关于进阶

我主要是做 Python 后端的,所以就分享下我之前的一些记录。如果你对这个方向感兴趣,可以看下。

有哪些好的 Python 知识网站?说下自己关注 Python 技术的几个途径​mp.weixin.qq.comv2-55cd64fea3cd8e7cd52ce644cacaed3b_180x120.jpg

后端要学些什么?想从事Python 后端开发?​www.zhihu.comzhihu-card-default.svg

怎么提升?Python 开发者如何提升自己?​mp.weixin.qq.comv2-1c6877b35278ad5754925684246b2db2_180x120.jpg

怎么看源码?说下自己看源码的一点经验​mp.weixin.qq.comv2-680b1ab404b87fbf641ce00f6504ff12_180x120.jpg

完。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值