Python内功修炼

前言

我们经常反反复复的解答类似的题目而因为各种报错苦恼不已。那么有没有一种好的方法能够解决这些问题,从而不再反反复复重复试错呢?答案是有,现在我围绕三个方面来说一说怎么从根本上解决Python中反反复复调试和报错的问题。

首先重要的是开发哲学,它会指导形成你的编程思想

下面我们来看看大名鼎鼎的Requests库的开发哲学

开发哲学

Requests 是以 PEP 20 的箴言为中心开发的

  1. Beautiful is better than ugly.(美丽优于丑陋)
  2. Explicit is better than implicit.(直白优于含蓄)
  3. Simple is better than complex.(简单优于复杂)
  4. Complex is better than complicated.(复杂优于繁琐)
  5. Readability counts.(可读性很重要)

对于 Requests 所有的贡献都应牢记这些重要的准则。

其次重要的是,站在巨人的肩膀上

你要知道如何正确的解决问题,第一途径是百度吗?是问同学吗?是问老师吗?如果这些都没有解决,那么怎么办?
我认为学习Python中,非常重要的一点就是查官方文档,去看看官方文档有没有解决方案,因为Python的开发团队经验丰富,这是任何一个开发者都无法比拟的,即使是国内教材,任何一本书籍都是基于此而进行发展的。

所以我认为,在Python问题中,Python官方文档就是巨人,你需要反复翻阅并仔细品读,有时候你认为这种方式麻烦,恰恰可能是最大的捷径。 因为很多时候,你并不是百度或者问同学和老师就能一次性解决问题的。

一方面查Python官方文档很重要,另一方面Python只是一个工具,使用它解决问题,问题本身也需要去理解,比如类似PAT刷题的思想,我归纳总结如下:

  1. 第一步理解题意
    理解题意一定要和题目中给出的测试样例相结合,很多时候理解有偏差,就需要样例去验证自己的想法,注意这是第一步,先不要写程序!
  2. 第二步编写程序
    这一步很重要,是要将实际问题转化为Python程序去解决,首先先将题目中的输入和输出样例,在程序中声明并初始化。此时你就知道,题目给你什么,我程序要返回什么?接下来,就需要具体编写程序了。
  3. 注意的地方
    变量一定要简洁易懂,易懂第一,不要声明p,y,x,z这类变量,程序代码却来越多的时候,就容易看不懂,容易出错,也不要只让自己看的懂,如果这个变量虽然对于你来说简洁易懂,但是如果你碰到问题,寻求大佬帮你调试,别人看不懂,就增加了别人阅读你代码的成本,并浪费了时间。

熟练的断点调试和编写测试用例是高手的基本功

debug,大家都很熟悉,单步调试,跳出函数,进入函数,单句调试,跳到断点等等,这些必须数量掌握,碰到问题时候才能快速定位。

单元测试非常重要,在leetcode和PTA类似平台刷题的时候,经常碰到测试样例过了,但是提交错误的情况,就是因为往往没有考虑到边界值,所以需要测试用例,Python内置了单元测试框架unittest,这里放出Python官方文档,以供参考:unittest --- 单元测试框架

posted @ 2022-10-20 20:59  蠢蛋快跑  阅读(94)  评论(1)    收藏  举报