入门Python的4大陷阱
推荐
在线提问>>
Python以语法简单、关键字少著称,因此经常被各大媒体忽悠其是一门非常容易入门的编程语言。他的特定描述自然不言而喻,但其是否容易入门却饱受争议。因为每个人的基础都不一样。
市面上大部分的Python入门书籍的目录都非常长(毕竟缺少某个重要的知识点会被批),但是作为入门来说,真的需要所有的知识点都学习一遍吗?
对于入门者来说,看着这些书籍目录学习往往会遇到各种陷阱,今天我就来分享一下我的个人观点。
语法太多了
Python的语法规则多不多?其实非常多,如果你学习过一些古老不再更新的编程语言,对比下来你就会发现其实Python语法非常多。
因为Python需要适应现代的开发要求,他"逼不得已"需要不断加入新的语法特性,比如像"装饰器"、"海象运算符"等等。
此时初学者会陷入第一个陷阱——抵受不住"目录"的诱惑,感觉自己跳过了某个知识点就会无法入门。
作为入门者我是不建议学习这些东西(短期内你大概率用不上)。
那么,到底需要学习哪些语法?
·分支判断
·循环
说白了就是if和for循环。
其实,学习这些语法不是要你去记忆怎么写,大部分时候这些语法语句不需要我们亲手敲出每个字母,因为现在的ide都非常友好,一般都能提供生成代码段的功能。
序列的处理非常重要
当你基本了解if和for的使用后,下一步就要了解序列的数据结构(列表、元组)。
此时,初学者会陷入另一个坑——列表有许多方法需要记忆!
同样地,我也不推荐入门者记忆这些方法,只需要记住最常用的1、2个操作即可。比如:
·添加元素:append
·移除元素:remove
同理,字符串也有许多处理方法,通常我们只需要学习少量几个方法即可。
小伙伴:"?!,就这样子?"
事实上,后期你可能连上述2个操作都很少用上。因为在Python中更倾向于构造新的序列,而非对序列原地操作。
当你后期学会了推导式之后,你就会发现用得最多的语法就是if和for。
你可能疑惑,为什么序列的处理很重要?
不管你学习什么的编程语言,不管你是应用开发还是普通的办公自动化学习,真正复杂的逻辑大部分来自于序列的处理。
比如一堆文件、每个文件中又会有一堆的数据。
而简单的单个数据,往往操作也是非常直白简单。
字典要不要在这个阶段学习?我建议是可以尝试了解,如果发现自己不能理解,那就跳过。因为后期总会有他的应用场景,那时候结合场景学习会更加轻松。
学习分解问题的思维
经过上面2个阶段的学习,你会发现自己充其量只能解决小学加减乘除的简单问题,稍微复杂一点的问题你就毫无头绪。
此时你就陷入了另一个陷阱——一边思考逻辑一边写代码。
多数入门书籍都不会教你这一点,因为这不是Python的特性,但他极其重要。
编程的本质是把现实逻辑用代码表达出来。
而现实中,我们要完成一件比较复杂的事情时,都是先考虑整体流程,划分出多个子流程,最后才针对每个子流程考虑细节。
我的文章少不了案例。
考虑以下的现实场景:你希望从你家里书架上(有100多本)找出某作者的书。
你可能觉得这个事情非常简单,不就是从头开始,每本书都看看作者名字,符合就拿出来?
这个思考过程实际就是从整体到细节的过程:
1)首先,你会考虑从哪里开始找,总有个搜索方向。比如从书架左上角横向扫过每一行的书。
2)其次,在没有开始找之前,你就决定找出一本书后,看封面的作者名字。
3)最后,符合条件要拿出来,与原来的书区别开来。
注意上述每一点的思考都是在你开始操作之前就决定的,这就是整体到细节的考虑。
你不会随手拿起一本书,然后才想到底怎么找作者名字?找到又要不要拿出来?这是非常反人类直觉的做法。
一定要学习自定义函数
为什么编程语言基本都有自定义函数的特性?因为这符合我们解决问题的思维逻辑
怎样进阶
上面的总结(针对入门):
·语法学习简单为主(if、for)
·基本序列要了解(列表、元组),但其对象操作方法不用特意记忆
·学会分解问题的思维
·学会自定义函数
实际上,点3才是最重要,其他点只是为他服务。
因此,Python的进阶仍然是围绕点3而展开。
比如,前面的例子中,整体流程代码中仍然包含了"取出符合条件的书"的逻辑,这其实不太合理。那么此时你就学习新的语法知识点,让你能简化整体流程代码。
以上内容为大家介绍了入门Python的4大陷阱,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。http://www.mobiletrain.org/