入门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/
猜你喜欢LIKE
相关推荐HOT
python gensim库是什么?
pythongensim库是什么?gensim库在文本监控里,首先在稳定上,坚如磐石,不用担心稳定性问题,其次,时效性很强,执行能力很快,经常在最重要的...详情>>
2023-11-06 21:48:19python中getattr()是什么?
python中getattr()是什么?本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。1、getattr()用来获取对象中的属性值;获取对象object的属...详情>>
2023-11-06 21:41:07python标识符如何使用?
python标识符如何使用?为了给编程中函数、类等进行区分,会赋予它们不同的名称。我们把这种命名叫做标识符,也可以理解为符号的标记。当然这种...详情>>
2023-11-06 21:33:55Python IDE之Thonny的介绍
pythonIDE之Thonny的介绍今天要介绍的IDE,可能没用过,甚至可能没听说过。叫Thonny,是塔尔图大学开发的,适合程序员新手。它的界面很容易使用...详情>>
2023-11-06 20:54:19热门推荐
如何使用python中的help函数?
沸如何使用python的callable函数?
热python gensim库是什么?
热python中xluntils库是什么?
新python中getattr()是什么?
python中的win32com库是什么?
python标识符如何使用?
如何使用python中schedule模块?
python中ruamel.yaml模块是什么?
defaultdict在python中计算键值的和
python sleep和wait对比分析
python中字符串转成数字的几种方法
python中SocketServer是什么?
python中如何使用@contextmanage?