Python干货 | 菜鸟进阶必备的九大技能

本文针对Python程序员,探讨从初学者到进阶者的转变,包括解决问题、提出问题、理解代码逻辑、使用字符串、列表、循环、函数、面向对象编程及遵循PEP的重要性。通过实例讲解了如何有效使用Python的特性,提升编程技巧。
摘要由CSDN通过智能技术生成

Python是一种很棒的语言,语法简单,无需在代码中搜索分号。对于初学者来说,Python是入门最简单的语言之一。Python有大量的库支持,你还可以安装其他库来增加自己的编程经验。

学了一阵子之后,你可能会觉得:为如此简单的操作写大量的代码有些令人困惑。实际上,事情并没有你想得那么糟。理解其背后的逻辑比写几行代码更为重要。短代码更好,但如果逻辑有问题,那么无论如何你的代码都会有问题。随着经验和创造力的增长,最终你的代码将会变得更短、更好。

初学者与中级程序员

那么,对于Python程序员而言,初学者和进阶者有什么区别呢?

本文将重点介绍以下方面:

  • 解决问题和提出问题;

  • XY问题;

  • 理解代码为何起作用(或不起作用);

  • 使用字符串;

  • 使用列表;

  • 使用循环;

  • 使用函数(并正确谈论函数);

  • 面向对象编程;

  • 尊重PEP。

 解决问题和提出问题

程序员缺乏解决问题能力的话,代码出色也是枉然。

如果你解决问题的思维不够发达,可能就无法为你要解决的问题找到最佳的解决方案。编程不仅仅是编写代码,需要解决问题才能有机会出初学者行列。

提出编程相关的问题也很重要。如果不经尝试,就让别人解决你的问题,可能也会出局。这很难,但如果不尝试自己解决问题,你将对解决方案一无所得。

如果想要了解更多关于编程提问的技能,我另有一篇文章,链接如下(英文):How to Ask Questions About Programming:https://medium.com/better-programming/how-to-ask-questions-about-programming-dcd948fcd2bd

XY问题

“我需要从字符串中提取最后3个字符。”

“不,你不需要。只需文件扩展名。”

 XY问题很有趣。你有个X问题,当你调用服务中心时,会寻求Y问题的解决方案,以解决X问题。

上面的案例就是极好的例子。如果想要文件名中的文件扩展名,很容易假设你需要的是最后3个字母。

如何写代码:

def extract_ext(filename):    return filename[-3:]print (extract_ext('photo_of_sasquatch.png'))>>> png

用户从一开始应该会索要扩展名,最后3个字母是Y问题,而X问题是我们想要扩展名。​​​​​​​

def extract_ext(filename):    return filename.split('.')[-1]print (extract_ext('photo_of_sasquatch.png'))print (extract_ext('photo_of_lochness.jpeg'))>>> png>>> jpeg

成功了!

你也可以使用标准库 `os.path.splitext() `,点击这里查看:os.path.splitext():https://www.geeksforgeeks.org/python-os-path-splitext-method/

理解代码为何起作用(或不起作用)

作为新手,你可能要花几天来对付一小段代码。如果这段代码突然起作用了,你可能会感觉放心,然后继续下一段代码。这是最糟糕的事情之一。不理解原因只管运行的做法,可能比不理解代码的为什么不运行更加危险。

不理解为何代码不运行的情况总会发生,当进行故障排除并搞清楚其原因时,思考代码不运行的原因和最终使其运行的因素非常重要。这次学到的知识会带到下一个程序中。

例如,如果多个缩进级别的代码中出现了缩进错误,可以尝试随机调整代码块,然后在最终运行时为自己庆祝。

切记,在大多数IDE中,可以折叠循环和if

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值