用了Python这么多年,揭秘Python不为人知的7大功能和特点!

栏目: Python · 发布时间: 6年前

内容简介:经常有新人或转行下面我总结了一些Python不为人知的功能特性,超好用,希望可以帮你更好的了解Python。

经常有新人或转行 软件测试 的朋友问我,如果想学测试,应该从哪门语言入手,以前我一般会推荐 Java 和 Python,现在主要推荐 Python。从发展趋势看来,Python 的发展势头有增无减,尤其是在 工具 脚本、数据爬取、数据分析和人工智能领域。大部分库语言都是 Python ,可见一斑。

用了 <a href='https://www.codercto.com/topics/20097.html'>Python</a> 这么多年,揭秘Python不为人知的7大功能和特点!

下面我总结了一些Python不为人知的功能特性,超好用,希望可以帮你更好的了解Python。

带任意数量参数的函数

你可能已经知道了Python允许你定义可选参数。但还有一个方法,可以定义函数任意数量的参数。

首先,看下面是一个只定义可选参数的例子

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

现在,让我们看看怎么定义一个可以接受任意参数的函数。我们利用元组来实现。

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

使用Glob()查找文件

很多Python函数都有一个长的描述其功能的名字。但如果你不是在别的地方见过glob()这个函数,你可能很难理解它是做什么的。

想像一个很有用的listdir()函数,它能让你通过匹配模式来搜索文件。

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

你可以像下面这样查找多个文件类型:

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

如果你想得到每个文件的绝对路径,你可以在返回值上调用realpath()函数:

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

调试

下面的一些例子利用了inspect模块。这个模块对于调试来说是非常有用的,并且你通该模块可获得的远比这里所描述的要多。

在本文中,我们不会覆盖这些功能的每一个,但是我将会向你展现一些用例:

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

生成唯一ID

可能会有一些情形,你需要生成一个唯一的字符串。我曾经见过很多人使用md5()函数来实现这一需求,尽快它并完全意味着该目的。

其实有一个名为uuid()的Python函数是用于这个目的的。

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

你可能会注意到,即使字符串是唯一的,但它们后边的几个字符看起来很相似。这是因为生成的字符串与电脑的MAC地址是相联系的。

为了降低产生相同字符串的几率,你可以使用下面的两个函数。

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

序列化

你曾经需要将一个复杂的变量存储在数据库或文本文件中吧?你不需要想一个奇特的方法将数组或对象格转化为式化字符串,因为Python已经提供了此功能。

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

这是一个原生的Python序列化方法。然而近几年来JSON变得流行起来,Python添加了对它的支持。现在你可以使用JSON来编解码。

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

这样更紧凑,而且最重要的是这样与JavaScript和许多其他语言兼容。然而对于复杂的对象,其中的一些信息可能丢失。

压缩字符

当谈起压缩时我们通常想到文件,比如ZIP结构。在Python中可以压缩长字符,不涉及任何档案文件。

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

注册Shutdown函数

有可模块叫atexit,它可以让你在脚本运行完后立马执行一些代码。

假如你想在脚本执行结束时测量一些基准数据,比如运行了多长时间:

用了Python这么多年,揭秘Python不为人知的7大功能和特点!

打眼看来很简单。只需要将代码添加到脚本的最底层,它将在脚本结束前运行。但如果脚本中有一个致命错误或者脚本被用户终止,它可能就不运行了。

当你使用atexit.register()时,你的代码都将执行,不论脚本因为什么原因停止运行。

总结:

上文中介绍了Python的一些特性,你是否还知道别的Python有用的特性,但还不是广为人知?可以一起探讨下!

最后为了让你更深入的了解Python,我再来介绍下 Python的好处

1、功能强大,使用简单,语言唯一性的特征明显(唯一性的意思就是你不能用十八种写法实现一个功能),而且具备海量的第三方库……Python 程序员最爱说的一句话是:人生苦短,我用 Python。

2、Python 支持交互式编程、面向对象编程、函数式编程、面向切面编程、当然还有元编程。

并没有很多的语言能提供像 Python 这样的多样性和简洁性,无论你是编码新手还是能信手写就脚本的大师,都需要了解一下 Python。

欢迎加入  51软件测试大家庭,在这里你将获得【最新行业资讯】,【免费测试工具安装包】,【软件测试技术干货】,【面试求职技巧】... 51与你共同学习,一起成长!期待你的加入: QQ    群:  

755431660


以上所述就是小编给大家介绍的《用了Python这么多年,揭秘Python不为人知的7大功能和特点!》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

MATLAB智能算法30个案例分析

MATLAB智能算法30个案例分析

史峰、王辉、胡斐、郁磊 / 北京航空航天大学出版社 / 2011-7-1 / 39.00元

MATLAB智能算法30个案例分析,ISBN:9787512403512,作者:史峰,王辉 等编著一起来看看 《MATLAB智能算法30个案例分析》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

URL 编码/解码
URL 编码/解码

URL 编码/解码