专栏首页Python绿色通道Python大牛私藏的20个python代码,短小精悍,用处无穷

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

本文来自:菜鸟学Python

今日推文说明: 次条是JS破解教程 三条是某企业破产动态,没有永久的企业,也没有永久的工作

另外:推荐一个华为云薅羊毛活动,错过等一年!

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

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

1.字符串的翻转

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

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

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

3.单词大小写

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

4.字符串的拆分

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

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

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

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

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

7.将元素进行重复

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

8.基于列表的扩展

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

9. 将列表展开

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

10.二值交换

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

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

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

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

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

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

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

14.使用try-except-finally模块

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

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

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

16.代码执行消耗时间

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

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

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

18.字典的合并

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

19.随机采样

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

20.检查唯一性

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


这20个短小精悍的小例子还是非常实用的,尤其是对菜鸟来说,多练习一下对功力提升大有裨益!读百遍,看千遍,不然自己动手敲一边。当然如果上面20招全部掌握的小伙伴,麻烦留言区吱一声

本文分享自微信公众号 - Python绿色通道(Python_channel)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-03-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 110道一线公司Python面试题,推荐收藏

    GIL 是python的全局解释器锁,同一进程中假如有多个线程运行,一个线程在运行python程序的时候会霸占python解释器(加了一把锁即GIL),使该进程...

    叫我龙总
  • 上海的房租有多高?我用Python爬虫为你揭晓

    今天,pk哥用 Python 爬虫给大家分析下上海的房租。我们用数据来看看上海的房租究竟有多高。

    叫我龙总
  • 使用Python自动化发布文章(二)

    本文是在上一篇文章 使用Python自动化发布文章:(一) 基础上加以改进而来的. 可以完成自动化发布文章。

    叫我龙总
  • 从零开始学习PYTHON3讲义(八)列表类型跟冒泡排序

    ​前面我们见过了不少的小程序,也见过了不少不同类型的变量使用的方法。但目前我们涉及到的,还都是单个的变量和单个的立即数。以变量来说,目前我们见到的,基本都属于“...

    俺踏月色而来
  • 可变序列与不可变序列

    于小勇
  • python笔记21-列表生成式

    python里面[]表示一个列表,快速生成一个列表可以用range()函数来生成。 对列表里面的数据进行运算和操作,生成新的列表最高效快速的办法,那就是列表生成...

    上海-悠悠
  • python基础类型(一):字符串和列表

    注意到最后三个的单双引号是嵌套使用的,但是最后一个的使用方法是错误的,因为当我们混合使用两种引号时必须有一种用来划分字符串的边界,即在两边的引号不能出现在字符串...

    渔父歌
  • Python 源代码里的算法——如何合并多个有序列表并使得结果依然有序?

    去年的一篇文章《一日一技:在 Python 里面如何合并多个有序列表并使得结果依然有序?》,我很自不量力地提到了“多个有序列表”。但实际上,那篇文章仅仅是合并两...

    青南
  • Python中list总结

    1:列表 list的定义: 一个连续的,排列有序的数列,由若干个元素组成,元素可以是任意对象(数字、字符串,对象,列表),元素可以使用索引查找,线性的数据结构。...

    py3study
  • 4.自定义序列类

    zhang_derek

扫码关注云+社区

领取腾讯云代金券