我珍藏的一些好的Python代码,技巧

开发 后端
其实Python是入门容易精通难,大家平时要养成记录的习惯,好的代码要记录下来,学会总结,经常翻一翻会有收获!今天我来分享一些我自己记录的代码结构,欢迎拍砖!

很多小伙伴私信芒果,有一些在问一些入门的问题,有一些在问如何学习Python.

其实Python是入门容易精通难,大家平时要养成记录的习惯,好的代码要记录下来,学会总结,经常翻一翻会有收获!今天我来分享一些我自己记录的代码结构,欢迎拍砖!

01.简洁的表达式

 

我珍藏的一些好的Python代码,技巧

点评:Python因为简洁高效而出名,就是因为语法非常简单,而且内置了很多强大的数据结构:

  • 比如我们可以大量用推导列表来生成很多简洁的代码
  • 比如我们可以用if else组合,本来需要2-3行代码写的,一行搞定!

02.排序

忽略想起了一句台词,“有人的地方就有江湖”,那么有数组这样的数据结构一定涉及到排序,取最大值,取最小值。

 

我珍藏的一些好的Python代码,技巧

点评:这个heapq库非常好用,尤其是我们在取一些列表的头部数据,比如最大几个,最小几个经常用到,很实用的一招!啥也不说了,赶紧背下来!

03.查询

排序和查询都是好基友,长的数据结构里面(字典,列表)里面我们一定会有查询,过滤的需求。有的时候,我们需要从一个很长的列表里面,找到某一个或者某一类的元素,怎么办,很简单,用高级函数filter :

1).用lambda配合filter过滤

 

我珍藏的一些好的Python代码,技巧

点评:lambda是一个非常简洁的函数表达方式,短小精悍,加上配合filter一起使用,非常漂亮。比如我们通过 字符串里的startswith内置函数,非常方便的过滤出列表里面我们需要的数据!(Python3稍微改一下再filter之外再加一个list,不然生成的是迭代器地址)

 

我珍藏的一些好的Python代码,技巧

点评:正则是一个非常不错的过滤方法,有的时候好的正则顶的上几十行代码,精通正则对玩数据分析,数据清洗是必需的技能!

04.碾平list

有的时候我们会遇到复杂的数据结构,比如列表里面套列表,层层嵌套,非常麻烦。有几种方法可以碾平:

1).第一种传统方法

 

我珍藏的一些好的Python代码,技巧

点评:这里面就是用递归来解决的,思路非常简单清晰,但是递归一定要有出口,设计的时候要注意。

2).下面两种都是高手的写法:

 

我珍藏的一些好的Python代码,技巧

.

 

我珍藏的一些好的Python代码,技巧

点评:这两招看上去非常简单,实际上理解起来很复杂,把很多技巧结合在一行里面,反正第二种我还能接受,第三种口味太重了,看的有点晕!

05.带条件的推导列表

推导列表应该是我最喜欢的一种Pythonic方式,它的演变有很多手法,这几种都是非常常见的,多读几遍,背下来!

 

我珍藏的一些好的Python代码,技巧

06.漂亮的添加字典的方法

设计数据结构的时候,字典是必须的!很多时候我们会用带下面的字典更新的方法,当然更好的是collections模块里面的defaultdict!

 

我珍藏的一些好的Python代码,技巧

点评:dict.update还是比较平易近人的,这个dict(dict,**options)用法我第一次看到的时候也是楞了一些,什么鬼,现在见多了,也就习惯了!

Python入门容易精通难,平时遇到优秀的代码一定要勤做笔记,不定时拿出来翻一翻,一定对你功力增长大有裨益!

责任编辑:未丽燕 来源: 今日头条
相关推荐

2018-09-11 16:41:05

Python数据结构语言编程

2009-11-26 10:32:57

PHP代码优化

2014-04-03 09:49:20

设计界面设计

2011-06-01 16:50:21

JAVA

2012-05-21 10:13:05

XCode调试技巧

2013-03-29 13:17:53

XCode调试技巧iOS开发

2020-10-19 19:25:32

Python爬虫代码

2011-10-26 20:55:43

ssh 安全

2011-07-12 09:47:53

WebService

2021-10-12 23:10:58

UnsafeJavaJDK

2011-05-23 18:06:24

站内优化SEO

2017-10-23 12:22:58

Android编程基础总结

2018-01-09 18:06:41

Python爬虫技巧

2020-04-14 09:22:47

bash脚本技巧

2020-04-08 10:21:58

bash脚本语言

2017-09-20 15:07:32

数据库SQL注入技巧分享

2017-05-10 15:30:30

skynet崩溃程序

2018-05-07 08:22:19

LinuxImageMagick查看图片

2022-02-17 13:58:38

Linux技巧文件

2020-05-19 08:06:57

代码重构代码开发
点赞
收藏

51CTO技术栈公众号