您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > Python

Python大牛私藏的20个精致代码,短小精悍,用处无穷

时间:2020-12-29 11:17:39  来源:  作者:

当今Python/ target=_blank class=infotextkey>Python编程语言的潮流已经成为不可阻挡的趋势,python以其较高的可读性和简洁性备受程序员的喜爱。而python编程中的一些小的技巧,运用的恰当,会让你的程序事半功倍。

以下的20个小的程序段,看似非常的简单,但是却非常的有技巧性,并且对个人的编程能力是一个很好的检验,大家应该在日常的编程中多多使用,多多练习。

1.字符串的翻转

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


字符串的翻转,首先最简单的方法就是利用切片的操作,来实现翻转,其次可以利用reduce函数来实现翻转,在python3中,reduce函数需要从functools中进行导入。

2.判断字符串是否是回文

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


该例也可以看作是第一例的应用,利用字符串的翻转来判断字符是否是回文字符串。

3.单词大小写

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


面对一个字符串,想将里面的单词首字母大写,只需要调用title()函数,而所有的字母大写只需要调用upper()函数,字符串首字母大写则是调用capitalize()函数即可。

4.字符串的拆分

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


字符串的拆分可以直接利用split函数,进行实现,返回的是列表,而strip函数用于移除字符串头尾指定的字符(默认为空格或换行符)。

5.将列表中的字符串合并

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


这一条可以认为是第4条的反例,这里是将列表中的字符串合并为字符串。第4条可以与第5条结合,来去除字符串中不想留下的项。

6.寻找字符串中唯一的元素

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


在python中,对于唯一值的筛查,首先应该想到对于set的利用,set可以帮助我们快速的筛查重复的元素,上述程序中,set不仅可以对字符串,而且还可以针对列表进行筛查。

7.将元素进行重复

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


将元素进行重复,可以采用“乘法”的形势,直接乘以原来的元素,也可以采用“加法”的形式,更方便理解。

8.基于列表的扩展

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


基于列表的扩展,可以充分利用列表的特性和python语法的简洁性,来产生新的列表,或者将嵌套的列表进行展开。

9. 将列表展开

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


首先,方法1中 ,我们调用的是iteration_utilities 中的deepflatten函数,第二种方法直接采用递归的方法,我们自己来实现复杂列表的展平,便可以得到展开后的列表。

10.二值交换

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


Python中的二值交换,可以直接采用交换的方式,如上图的方法1,而方法2所示的方法,借助第三个变量,来实现了两个数值的交换。

11.统计列表中元素的频率

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


我们可以直接调用collections中的Counter类来统计元素的数量,当然也可以自己来实现这样的统计,但是从简洁性来讲,还是以Counter的使用比较方便。

12.判断字符串所含元素是否相同

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


Counter函数还可以用来判断字符串中包含的元素是否相同,无论字符串中元素顺序如何,只要包含相同的元素和数量,就认为其是相同的。

13.将数字字符串转化为数字列表

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


上述程序中,方法1利用的map函数,map函数可以将str19中的每个元素都执行int函数,其返回的是一个迭代器,利用list函数来将其转化为列表的形式。注意,在python2中执行map函数就会直接返回列表,而python3做了优化,返回的是迭代器,节省了内存

14.使用try-except-finally模块

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


当我们在执行程序时,可能会遇到某些不可预知的错误,使用try-except可以帮助我们去捕获这些错误,然后输出提示。注意,如果需要程序无论是否出错,都要执行一些程序的化,需要利用finally来实现。

15. 使用enumerate() 函数来获取索引-数值对

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


enumerate() 函数用于将一个可遍历的数据对象(如上图的列表,字符串)组合为一个索引序列。

16.代码执行消耗时间

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


利用time()函数,在核心程序开始前记住当前时间点,然后在程序结束后计算当前时间点和核心程序开始前的时间差,可以帮助我们计算程序执行所消耗的时间。

17.检查对象的内存占用情况

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


在python中可以使用sys.getsizeof来查看元素所占内存的大小。

18.字典的合并

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


在python3中,提供了新的合并字典的方式,如方法1所示,此外python3还保留了python2的合并字典的方式,如方法2所示。

19.随机采样

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


使用random.sample()函数,可以从一个序列中选择n_samples个随机且独立的元素。

20.检查唯一性

Python大牛私藏的20个精致代码,短小精悍,用处无穷

 


通过检查列表长度是否与set后的列表长度一致,来判断列表中的元素是否是独一无二的。

 

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

本文来自腾讯云 作者:龙哥



Tags:Python 代码   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
当今python编程语言的潮流已经成为不可阻挡的趋势,python以其较高的可读性和简洁性备受程序员的喜爱。而python编程中的一些小的技巧,运用的恰当,会让你的程序事半功倍。以下的...【详细内容】
2020-12-29  Tags: Python 代码  点击:(466)  评论:(0)  加入收藏
觉得此教程有帮助,请关注一波,更多精彩教程分享。教程包括 62 个基础样例,12 个核心样例,26 个习惯用法。如果觉得还不错,欢迎转发、留言。一、 Python 基础 62 例1 十转二将十进...【详细内容】
2020-06-11  Tags: Python 代码  点击:(70)  评论:(0)  加入收藏
在我们以前的文章中,曾经讲过计算斐波那契数列的几种方法,其中基于递归的方法是速度最慢的,例如计算第40项的值,需要36秒。如下图所示:要提高运算速度,根本办法当然是改进算法。不...【详细内容】
2020-04-15  Tags: Python 代码  点击:(73)  评论:(0)  加入收藏
学 Python 怎样才最快,当然是实战各种小项目,只有自己去想与写,才记得住规则。本文是 30 个极简任务,初学者可以尝试着自己实现;本文同样也是 30 段代码,Python 开发者也可以看看是不是有没想到的用法。...【详细内容】
2019-09-24  Tags: Python 代码  点击:(209)  评论:(0)  加入收藏
▌简易百科推荐
近几年 Web3 被炒得火热,但是大部分人可能还不清楚什么是 Web3,今天就让w3cschool编程狮小师妹带你了解下 Web3 是什么?与我们熟知的 Web1 和 Web2 又有什么区别呢?web3.0什么是...【详细内容】
2022-07-15  编程狮W3Cschool    Tags:Web3.0   点击:(2)  评论:(0)  加入收藏
1、让我们一起来看下吧,直接上图。 第一眼看到是不是觉得很高逼格,暗黑画风,这很大佬。其实它就是------AidLearning。一个运行在安卓平台的linux系统,而且还包含了许多非常强大...【详细内容】
2022-07-15  IT智能化专栏    Tags:AidLearning   点击:(2)  评论:(0)  加入收藏
真正的大师,永远都怀着一颗学徒的心! 一、项目简介 今天说的这个软件是一款基于Python+vue的自动化运维、完全开源的云管理平台。二、实现功能 基于RBAC权限系统 录像回放 ...【详细内容】
2022-07-14  菜鸟程序猿    Tags:Python   点击:(3)  评论:(0)  加入收藏
前言今天笔者想和大家来聊聊python接口自动化的MySQL数据连接,废话不多说咱们直接进入主题吧。 一、什么是 PyMySQL?PyMySQL是在Python3.x版本中用于连接MySQL服务器的一个库,P...【详细内容】
2022-07-11  测试架构师百里    Tags:python   点击:(19)  评论:(0)  加入收藏
aiohttp什么是 aiohttp?一个异步的 HTTP 客户端\服务端框架,基于 asyncio 的异步模块。可用于实现异步爬虫,更快于 requests 的同步爬虫。安装pip install aiohttpaiohttp 和 r...【详细内容】
2022-07-11  VT漫步    Tags:aiohttp   点击:(15)  评论:(0)  加入收藏
今天我们学习下 Queue 的进阶用法。生产者消费者模型在并发编程中,比如爬虫,有的线程负责爬取数据,有的线程负责对爬取到的数据做处理(清洗、分类和入库)。假如他们是直接交互的,...【详细内容】
2022-07-06  VT漫步    Tags:Python Queue   点击:(34)  评论:(0)  加入收藏
继承:是面向对象编程最重要的特性之一,例如,我们每个人都从祖辈和父母那里继承了一些体貌特征,但每个人却又不同于父母,有自己独有的一些特性。在面向对象中被继承的类是父类或基...【详细内容】
2022-07-06  至尊小狸子    Tags:python   点击:(25)  评论:(0)  加入收藏
点击上方头像关注我,每周上午 09:00准时推送,每月不定期赠送技术书籍。本文1553字,阅读约需4分钟 Hi,大家好,我是CoCo。在上一篇Python自动化测试系列文章:Python自动化测试之P...【详细内容】
2022-07-05  CoCo的软件测试小栈    Tags:Python   点击:(27)  评论:(0)  加入收藏
第一种方式:res = requests.get(url, params=data, headers = headers)第二种方式:res = requests.get(url, data=data, headers = headers)注意:1.url格式入参只支持第一种方...【详细内容】
2022-07-05  独钓寒江雪之IT    Tags:Python request   点击:(19)  评论:(0)  加入收藏
什么是python类的多态python的多态,可以为不同的类实例,或者说不同的数据处理方式,提供统一的接口。用比喻的方式理解python类的多态比如,同一个苹果(统一的接口)在孩子的眼里(类实...【详细内容】
2022-07-04  写小说的程序员    Tags:python类   点击:(28)  评论:(0)  加入收藏
站内最新
站内热门
站内头条