如何去写一本深入浅出又通俗易懂的Python教程

1, 为什么是Python

作为一门在码农江湖中沉淀多年的编程技术,在此之前已经在2007、2010、2018三个年度获得过TIOBE编程语言社区评选的年度编程语言,而真正让Python成功破圈成为大众所知的文化符号原因,却要到人工智能的崛起之后。

随着六年前,2016年,AlphaGo在围棋上战胜李世石,“机器学习”、“深度学习”、“人工智能”等概念也为普罗大众所熟知,似乎未来科技的推进方向已近在眼前。而作为Python这种上手难度低,拥有着众多AI内置库的编程语言,也瞬间成为了相关从业人员和爱好者趋之若鹜争相学习的热门技术,甚至在某些省份高校考试中,成功的取代了有着半个甲子历史的VB语言,将其列入到加分项中。

时至今日,Python在大众心目中的热度依然不减,并且在2020年和2021年第四、第五次被评为TIOBE年度语言,不仅成为至今获TIOBE年度语言最多次的语言,还是自object-C后第二个蝉联这项荣耀的技术语言。截止到2022年12月,更是连续15个月高居活跃榜之首,这款集合了简单易学(上手30分钟,“hello,world”搞起来),语法优美(代码洁癖的福音),同时拥有强大库类(想想折腾Java时候为了找那些好用的JAR包),开发效率奇高(想想C++动不动就来个内存溢出)等众多优点,而且从WEB开发,到自动化运维,从数据分析,到机器学习,从爬虫引擎,到科学计算无所不包、无所不能的神级编程语言始终获得圈内圈外人们的目光,甚至一度出现了类似“从Scratch到Python”一步到位,成为“高富帅”,最终到达“人生巅峰”的梦幻联动。

好吧,言过其实,虚假宣传,写代码和做任何事情都一样,脚踏实地,认真严谨才是王道。一个不经意的疏忽往往需要成百上千的精力去填补BUG,所以学习技术切忌急功近利,轻敌冒进。

另外,知道2019年的年度语言是什么吗?C,想不到吧,一款已经出现33年并且永远没有跌出过排名前十位的编程语言。流行的,在影响世界,经典的,则恒久不变。语言嘛,不过是解决问题的工具,而已。

2,“对那些必须先学会才能做的事,我们可以边干边学。”——亚里士多德《尼科梅钦伦理学》

如果想要去学习一门技术,那么最好的教材肯定是官方文档。当然我想大多数人都会受制于官方文档那种类似说明书一般的结构条理,毫无轻重缓急主次分明的铺排陈设,以及过于庞大的体量篇幅,这确实是一个足以劝退任何一个有心学习者的理由,毕竟对于初学者来说,去理解掌握如同辞典一般繁琐全面冗长的函数解析,都无法和在屏幕上输出一行“hello world!”来的有成就感。所以,在学习之初去寻找一本能够带领读者入门的技术书籍是很有必要的事情。

本书《Python编程:从入门到实践(第2版)》正是众多选择中不可多得的一本好书。虽然在中译标题中,依旧走了“从XX到XX”的传统风格,不过英译本却有着另一番解释,“Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming”,不妨直译为“Python 速成教程:动手操作、基于项目的编程入门”。很明显作者的原意并非把这本书定义为让读者一劳永逸,深入专精,面面俱到的教材,而是基于具体需求,落地于实际操作,让读者,甚至是0基础的初学者都能按部就班,循序渐进,手把手带领入门的学习材料。

全书分成两个部分,前一部分以Python3.6+的语法为主,从语言怎样安装到如何运行调试,从变量设置到列表数组,以及for、if、while的各种写法,还有常见函数,类的设置,都逐一做了详细的解释,并提供了充足的案例来让读者进行调试和练习。甚至相当有心的考虑到,学习者可能运行系统的不尽相同,分别提供了win、macOS和Linux各自平台的部署教程。而读者所要做的,就是认认真真的将书中的代码输入到系统,运行出结果,牢记在心中。请记住,编程是一门技术,想要入门的第一要务就是“亲自动手”。

在这一部分,作者并没有纠结在复杂的算法与生僻的函数之上,装饰器、闭包一概全无,推导式,迭代器,生成器也不甚提及,今后这一切读者可以通过搜索引擎和技术社区去掌握和学习,而如今,掌握语法,打好基础才是重中之重。

到了第二部分,正是本书的精华所在。作者用三个实打实的项目,来打通读者之于Python技术的“任督二脉”。

“外星人入侵”是一款基于PyGame开发的射击类小游戏。虽然属于入门型游戏,不过作者依旧考虑到了游戏的完整性,“武装飞船”的创建,游戏者与游戏角色的I/O交互,还设计了子弹的运动,和对手外星人的移动变化。并且非常贴心的加入记分系统、等级系统。本项目虽然引入了PyGame,可更多的是Python本身语法的应用,还强化了函数的编写,相关类的使用。

“数据可视化”是基于Python的2D库“Matplotlib”开发的图表生产系统,也同时向学习者展示了Python自身对庞大数据优秀的处理能力。作者通过对一些天气和地震数据的分析,导入csv和json文件后,最终生成可视化的相关图表。不得不承认,在其他语言中需要引入第三方类库方能实现的华丽效果,在Python中竟然可以一蹴而就,确实让人羡慕。

“Web应用程序”是一个基于Django 的笔记类项目,应该说这是三个项目中最有应用场景的系统。项目中不但涉及到多个库的API接口,还非常完整的设计了一套用户系统,并让其拥有权限管理功能,在界面设计上同样整合了bootstrap前端框架,还提供了在heroku上部署的方式。可以这么说,这个项目拥有了基础WEB程序所该有的雏形。开发者可以在此基础上创作拥有更加多功能的系统。

总得来说,本书给予的是一个学习者如何去入门一门技术的一个非常不错的起点,而读者所要做的就是一步步认真实现书中所涉及的代码和程序,让它们能够顺利运行。于是就可以去到下一个程度,更加深入的研究更高层次的Python技术。正如作者在后记中所说的那样:“网上有很多Python学习资料,市面上还有大量针对中级程序员编写的Python图书。现在你掌握了基本知识,并且知道了如何学习技能,因此能看懂其中的很多资料。”这本书是一扇门,通往更加宽阔的技术天地。

不积跬步,无以至千里;不积小流,无以成江海。所谓技术的成长,就是一行行代码,一次次试错,一件件困难,一个个问题所积累总结后的经验教训,祝各位朋友,开卷有益。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值