在使用Python这么久,时不时就会发现了一些过去不知道的功能和特性。一些可以说是非常有用,但却没有充分利用。本篇文章总结出你应该了解的Python功能特色,希望大家在学习过程中,少走弯路,善用技巧!

带任意数量参数的函数

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

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

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

使用Glob()查找文件

大多Python函数有着长且具有描述性的名字。但是命名为glob()的函数你可能不知道它是干什么的除非你从别处已经熟悉它了。

它像是一个更强大版本的listdir()函数。它可以让你通过使用模式匹配来搜索文件。

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

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

调试

下面的例子使用inspect模块。该模块用于调试目的时是非常有用的,它的功能远比这里描述的要多。

这篇文章不会覆盖这个模块的每个细节,但会展示给你一些用例。

生成唯一ID

在有些情况下你需要生成一个唯一的字符串。我看到很多人使用md5()函数来达到此目的,但它确实不是以此为目的。

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

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

为了减少重复的情况,你可以使用这两个函数。

序列化

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

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

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

压缩字符

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

注册Shutdown函数

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

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

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

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

很多时候跟着书和不系统的视频网站学习,会发现没有目标,学了很多却不知道自己到底能够做出什么成绩。要有一个清晰的职业学习规划,学习过程中会遇到很多问题,你可以到我们的 python学习 -q-u-n- 【 784758214 】,基础,进阶。好友都会在里面交流,分享一些学习的方法和需要注意的小细节,每天也会准时讲一些项目实战案例。

点击:

加入

python使用函数的优点-Python用了这么多年,总结出超实用的功能和特点相关推荐

  1. python使用函数的优点-Python递归函数的优缺点

    对于求 n!,你可能会问,为何要用递归?有何优势?答案并不复杂,利用递归可以使算法的逻辑变得非常简单.因为递归过程的每一步用的都是同一个算法,计算机只需要自顶向下不断重复即可. 具体到阶乘的计算,无非 ...

  2. python使用函数的优点-Python函数的特点

    函数对象 一.函数对象的四大工能 1.引用 def helllo(): x='helllo word' f=func print(f) 2.当作参数传给一个函数 def foo(m): m() foo ...

  3. python使用函数的优点-原来 Python 还有这些实用的功能和特点!

    原标题:原来 Python 还有这些实用的功能和特点! 在使用Python多年以后,我偶然发现了一些我们过去不知道的功能和特性.一些可以说是非常有用,但却没有充分利用.考虑到这一点,我编辑了一些你应该 ...

  4. python pos函数_使用python+sklearn实现特征提取

    sklearn.feature_extraction模块可用于以机器学习算法支持的格式从原始数据集(如文本和图像)中提取特征.**注意:**特征提取与特征选择有很大不同:前者是将任意数据(例如文本或图 ...

  5. python面向对象编程的优点-Python语言有哪些优点?

    2018年主流的十大编程语言中,Python排名第一,被广大使用者誉为"更美好"编程语言.Python语言自身的语言特点,使得他深受开发者的喜爱,那么Python语言到底有哪些优点 ...

  6. python的特点和优点-Python的优点和缺点有哪些?Python语言的特点

    任何一种编程语言,都有其优劣性,Python编程亦如此,以下是对Python优缺点的解析: 先看优点 Python的定位是"优雅"."明确"."简单& ...

  7. python画函数曲线-使用Python画数学函数曲线

    import numpy as np import pandas as pd import matplotlib.pyplot as plt plt.figure(1) # 创建图表1 plt.fig ...

  8. python scale()函数_【Python菜鸟进阶大神】Matplotlib数据可视化007:词云

    词云是对网络文本中出现频率较高的关键词予以视觉上的突出,形成关键词云层或关键词渲染,从而过滤掉大量的文本信息,使读者只要一眼扫过文本就可以领略文本的主旨. 词云用Python是怎么实现的.用wordc ...

  9. python deepcopy函数_用Python解数独[6]:递归获得最终答案

    目录 用Python解数独[0] 用Python解数独[1]:求每个单元格的行值域 用Python解数独[2]:求列值域和九宫格值域 用Python解数独[3]:求总值域 用Python解数独[4]: ...

最新文章

  1. vue颜色选择器_如何制作? Vue的颜色选择器!
  2. 在一周之内,快速看完整部教材,列出你不懂的5-10个问题。
  3. NiFi 脚本执行器使用指南 (part 3)
  4. maven+jenkins自动化构件
  5. [转载] python通过adb获取android手机耗电量
  6. 2013年上半年项目总结
  7. Swift 后端开发
  8. 语言技巧——scanf读入多行字符串
  9. 首发:成功解决MediaCodec中decoder超过720出错的问题
  10. python人脸识别代码_一行Python代码搞定人脸识别
  11. 机房收费系统之实现图(组件图、部署图)
  12. 搭建个人云盘保姆级教程
  13. 新榜微信文章抓取客户端(APSpider)
  14. 一味顺从的人没有好果子吃
  15. 火狐浏览器的翻译问题
  16. EasyExcel 三分钟搞定导入导出
  17. 如何快速干净的卸载mysql数据库,不影响下次安装
  18. Java程序设计基础【10】
  19. 数字抽奖小程序_抽奖小程序凭什么成为流量的风口?怎么以最快的方式引流?...
  20. Tex资料及问题解决方案汇总

热门文章

  1. 英特尔nuc能代替主机吗_制砂机生产的沙子可靠吗?能代替天然沙子吗?
  2. 基于深度学习的目标检测算法:SSD——常见的目标检测算法
  3. Powershell 渗透测试工具-Nishang
  4. go语言笔记——还是大爱的我的python,开发效果高,tornado的性能也很不错
  5. flask gevent uwsgi nginx 联合高并发 部署
  6. [CF]Codeforces Round #528 Div.2
  7. 2018-12-04-Python全栈开发-day92-自动登录
  8. JAVASE8流库Stream学习总结(三)
  9. python:函数可以返回值--编写脚本计算24 + 34 / 100 - 1023
  10. 将HTML导出生成word文档