python基础代码技巧_写Python必须知道的这几个代码技巧!你会吗?
Python是入门容易精通难,大家平时要养成记录的习惯,好的代码要记录下来,学会总结,经常翻一翻会有收获!今天我来分享一些我自己记录的代码结构,欢迎拍砖!
01.
简洁的表达式
点评:Python因为简洁高效而出名,就是因为语法非常简单,而且内置了很多强大的数据结构:比如我们可以大量用推导列表来生成很多简洁的代码
比如我们可以用if else组合,本来需要2-3行代码写的,一行搞定!
02.排序
忽略想起了一句台词,“有人的地方就有江湖”,那么有数组这样的数据结构一定涉及到排序,取最大值,取最小值。
点评:这个heapq库非常好用,尤其是我们在取一些列表的头部数据,比如最大几个,最小几个经常用到,很实用的一招!啥也不说了,赶紧背下来!
03.查询
排序和查询都是好基友,长的数据结构里面(字典,列表)里面我们一定会有查询,过滤的需求。有的时候,我们需要从一个很长的列表里面,找到某一个或者某一类的元素,怎么办,很简单,用高级函数filter :
1).用lambda配合filter过滤
点评:lambda是一个非常简洁的函数表达方式,短小精悍,加上配合filter一起使用,非常漂亮。比如我们通过 字符串里的startswith内置函数,非常方便的过滤出列表里面我们需要的数据!(Python3稍微改一下再filter之外再加一个list,不然生成的是迭代器地址)
点评:正则是一个非常不错的过滤方法,有的时候好的正则顶的上几十行代码,精通正则对玩数据分析,数据清洗是必需的技能!
04.
碾平list
有的时候我们会遇到复杂的数据结构,比如列表里面套列表,层层嵌套,非常麻烦。有几种方法可以碾平:
1).第一种传统方法
点评:这里面就是用递归来解决的,思路非常简单清晰,但是递归一定要有出口,设计的时候要注意。
2).下面两种都是高手的写法:
点评:这两招看上去非常简单,实际上理解起来很复杂,把很多技巧结合在一行里面,反正第二种我还能接受,第三种口味太重了,看的有点晕!
05.
带条件的推导列表
推导列表应该是我最喜欢的一种Pythonic方式,它的演变有很多手法,这几种都是非常常见的,多读几遍,背下来!
06.
漂亮的添加字典的方法
设计数据结构的时候,字典是必须的!很多时候我们会用带下面的字典更新的方法,当然更好的是collections模块里面的defaultdict!
点评:dict.update还是比较平易近人的,这个dict(dict,**options)用法我第一次看到的时候也是楞了一些,什么鬼,现在见多了,也就习惯了!
还有一块没有分享,就是类相关的代码!限于篇幅,我们后面单独出一篇,类方面的技巧和好的代码太多了,因为类本身就涉及到两个方面:一个往内:比如Python里面有大量的魔方函数和内置函数,这里面有很多技巧,对于不同的应用场景,有些简洁的用法。
一个往外:类的设计必然涉及到继承和组合,那么就一定会牵连到大名鼎鼎的设计模式,好的代码结构是非常清晰和容易扩展的。
Python入门容易精通难,平时遇到优秀的代码一定要勤做笔记,不定时拿出来翻一翻,一定对你功力增长大有裨益!
python基础代码技巧_写Python必须知道的这几个代码技巧!你会吗?相关推荐
- python怎么整体缩进_写python代码时怎么快速的给大量代码加上缩进?
写python代码时怎么快速的给大量代码加上缩进? 已经写了很长的一段代码,突然发现最开始的地方少了个if,之前写的所有代码都要在if之内,原来用c的时候直接加两个花括号就行了,现在用python怎么 ...
- python基础教程微信_用Python实现让微信地球转起来附代码!
微信地球 手机重启后打开微信的一瞬间,会看到一幅有名的图片. 大概是站在月亮上看地球的效果. 你有没有想过,如果上面那个地球转起来会是怎样? 素材 这里有两个表面素材,一个是地球表面素材,一个是云图素 ...
- python函数增强代码可读性_写Python必须知道的这几个代码技巧!你会吗?
Day09 函数的初始 函数:函数是以功能为导向,一个函数封装一个功能.登录,注册,文件的改的操作... 函数减少代码的重复性,增强了代码的可读性: 获取任意一个字符串的元素的个数 s1 = &quo ...
- python编写装饰器_写python中的装饰器
python中的装饰器主要用于在已有函数实现功能前附加需要输出的信息,下面将用实例展示我如何写装饰器. 首先分别尝试写装饰器装饰一个无参函数和一个有参函数(被装饰函数仅输出,无返回值情况下) 1 de ...
- 代写python代码一般多少钱_代写CO 353课程作业、代做Python程序设计作业、代写Python语言作业...
代写CO 353课程作业.代做Python程序设计作业.代写Python语言作业 日期:2020-03-17 11:22 CO 353 - Homework assignment 4 Winter ' ...
- 代写python作业 费用_代写dither method作业、代做python程序设计作业、代写python语言作业、代做Image Dithering作...
代写dither method作业.代做python程序设计作业.代写python语言作业.代做Image Dithering作 日期:2019-10-07 04:39 ? Implement the ...
- Python基础入门教程:使用 Python 3 协程快速获得一个代理池
Python基础入门教程:使用 Python 3 协程快速获得一个代理池 前言 在执行 IO 密集型任务的时候,程序会因为等待 IO 而阻塞.比如我们使用 requests 库来进行网络爬虫请求的话, ...
- python 基础系列(二) — Python基本语法
python 基础系列(二) - Python基本语法 python基础系列索引 python 基础系列(一) - Python介绍 python 基础系列(二) - Python基本语法 pytho ...
- python基础一入门必备知识-python基础教程#菜鸟也能看懂的超简单入门必备知识...
python基础语法教程 python一直是一门非常火爆的编程语言,从简洁的语法,全面的功能,也是得到许多编程萌新的重视,在刚刚接触编程不久的人来说,python就像是代码编程的入门语言,但其实想成为 ...
最新文章
- mysql semi join_MySQL 通过semi join 优化子查询
- 【Redis学习笔记】2018-07-11 Redis指令学习5
- 美团外卖商家端视频探索之旅
- 24、HTML 属性
- 第八节:实战前必须掌握的10个指令(下)
- HTML用ONMOUSEOVER,ONMOUSEOUT改变背景色或背景图片的方法
- 数据分析数据可视化(二)
- PostgreSQL 10 新特性, 流式接收端在线压缩redo
- Android\OPhone自定义视图(View)
- 我用 Python 集齐了支付宝五福!
- firefox插件开发和调试
- 基本了解云计算是什么东东了
- BigDecimal的equals方法做等值比较问题
- 大疆 机器视觉 图像相关岗位的招聘要求
- android 活动生命,Android 活动生命周期
- C语言编程b a化简,C语言编程,已知三角形的三边长a,b,c,计算求三角... 如果三角形三边长 a,b,c,满足( )那么这个三角形......
- 南京工业大学计算机考研难吗,南京工业大学(专业学位)计算机技术考研难吗
- css修改谷歌浏览器和火狐浏览器的滚动条样式
- 负载均衡器技术Nginx和F5的优缺点对比
- STM8L探索套件学习笔记-EXTI外部中断
热门文章
- 后台UI专辑模板有这些就够了!
- UI设计干货素材|轻松搞定页面分页符(指示器)的设计
- 计算机考研854都有哪些学校,哈尔滨工业大学计算机考研854计算机基础参考书汇总...
- php zblog 侧边栏样式_免费ZBLOG双栏图文自媒体主题 支持自定义侧边模块
- java 匿名初始化_Java:双括号初始化 /匿名内部类初始化法
- C++求字符串长度的两种方法
- CUDA编程之:Stream(流)
- 云原生时代的 YAML 教程
- gtk学习总结:GTK从入门到放弃,三天包教包会
- raid 物理盘缓存状态_CDN与其他层面缓存