python零基础有用吗-python零基础入门后的尴尬怎么解决?

首先我也是python语言和爬虫的学习者,并不是大神,所有言论都是个人经验有感而发,如有谬误还请各位大神手下留情。大神无暇度化我等愚夫,我也只好班门弄斧,抛砖引玉了。

1.关于爬虫

我觉得你的目标很明确,就是学习爬虫,至少阶段性目标是这样,我认为这是正确的选择。

编程需要大量重复练习、需要有意义的实践,才能掌握,爬虫符合这两点,首先它并不复杂,一个项目短则几分钟,长则几天就可以完成,周转速度快,适合重复练习。另外它有意义,比如你想爬一些电影、歌曲,爬一些租房或者物流数据,这些都与我们的生活相关,可以让我们及时获得意义和成就感。

爬虫的知识又很综合,可以连带着学到很多东西。首先爬虫是从网络上爬取信息,可以学到网络协议、前后端的各种知识,甚至是加密反爬的一些知识(这是单纯学python web很难学到的);爬下的信息要存储,又会学到文件操作、表格操作甚至数据库的一些知识;数据拿到之后要分析,又会学到数据分析的一些知识;遇到一些更难的加密,或者需要一些对数据更深的利用,还会跟人工智能、机器学习等相联系。总之,爬虫不仅仅是一种单一的技术,更是一种兼容并包的学习框架体系,而且难易可控。

2.关于语法

爬虫并不需要太高深的语法,很多应用技术都不需要,因此我觉得你没有必要学完高级语法再学爬虫,而是学完初级中级语法之后,就开始爬虫的学习,高级语法感兴趣可以慢慢学,甚至可以不学。对于高级语法的态度应该是理解领悟为主。

下面是我对初级、中级、高级语法的划分:

初级语法:条件、循环、函数封装、类封装 —— 这是各门语言的共性

中级语法:列表生成式、匿名函数、高阶函数——这是python与其他语言不同的地方,python的个性部分,一个是对高级数据结构的支持,特别是可迭代对象,计算机最终解决问题就靠两个,一个是迭代,一个是递归,python把迭代放到了一个很高的位置,可以说python是一门以迭代为中心 的语言;python还吸收了函数式编程的特点,把函数放到了很高的位置,函数可以做参数,可以做返回值,产生了很多灵活的用法。

高级语法:迭代器、装饰器、魔法函数、元编程——这是python最核心的部分。如果说迭代是python的面子,迭代器就是它的里子。从而可以发现魔法函数,揭示出python的内部接口设计,跟其他语言是迥然有异的。经常听到说,编程可以一通百通,我觉得最关键的就是对语言共性与特性的认识。

3.底层逻辑

编程是思维科学,不是自然科学,归根结底是如何描述这个世界,这是一个哲学问题。现在编程语言的共识是用类和对象来描述(这是西方哲学的体现,东方并不这样看待世界,佛家讲缘起性空,一切事物由因缘和合而生)。但也有分歧,有的把类看作模板,有的把类看作原型。对对象的实现不同,对接口的实现也不同。这些都是世界观的差异,也是编程语言的底层逻辑。

4.关于书和教程

书和教程,用做菜来比喻,我分为三种类型:

第一种是说明书式的,会告诉你盐是咸的,糖是甜的,面面俱到,但还是不会做菜。

第二种是菜谱式的,会告诉把那些东西组合会做出一道什么菜,但不会告诉你为什么。

第三种是思想性的,会给你讲烹调的科学和美学,告诉你为什么要这么做。

现实中,第二种是最需要的,也就是案例教学,但案例一定要有一定深度有一定的实用性,否则也是纸上谈兵。第一种也是需要的,但比较容易获得,直接百度或者看文档就可以得到。第三种是比较难得的,因为想讲出思想性不是普通人能做到的。

《流畅的python》这本书也是我比较推崇的,我觉得它兼具了第一种和第三种,唯一不足的是案例不够贴地气,但我认为已经是难以超越的经典了。另外推荐两本书是《SICP in python》和《python源码剖析》。

至于视频教程,我存了一些,有谁需要可以私聊我,我免费给大家。

最后,希望你能坚持把python学下去,念念不忘,必有回响。

你可能感兴趣的:(python零基础有用吗-python零基础入门后的尴尬怎么解决?)