iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python标准库的操作方法有哪些
  • 347
分享到

Python标准库的操作方法有哪些

2023-06-30 11:06:35 347人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要讲解了“python标准库的操作方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python标准库的操作方法有哪些”吧!1、操作系统接口os模块提供了不少与操作系统相关联

这篇文章主要讲解了“python标准库的操作方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python标准库的操作方法有哪些”吧!

Python标准库的操作方法有哪些

1、操作系统接口

os模块提供了不少与操作系统相关联的函数。

>>> import os>>> os.getcwd()      # 返回当前的工作目录'C:\\python34'>>> os.chdir('/server/accesslogs')   # 修改当前的工作目录>>> os.system('mkdir today')   # 执行系统命令 mkdir 0

建议使用 "import os" 风格而非 "from os import *"。这样可以保证随操作系统不同而有所变化的 os.open() 不会覆盖内置函数 open()。

os常用命令

序号方法功能
1os.access(path, mode)  检验权限模式
2os.chdir(path)  改变当前工作目录
3os.chflags(path, flags)  设置路径的标记为数字标记。
4os.chmod(path, mode)    更改权限
5os.chown(path, uid, gid)  更改文件所有者
6os.chroot(path)  改变当前进程的根目录
7os.close(fd)    关闭文件描述符 fd
8os.closerange(fd_low, fd_high)    关闭所有文件描述符,从 fd_low (包含) 到 fd_high (不包含), 错误会忽略
9os.dup(fd)    复制文件描述符 fd
10os.dup2(fd, fd2)    将一个文件描述符 fd 复制到另一个 fd2

2、文件通配符

glob模块提供了一个函数用于从目录通配符搜索中生成文件列表:

>>> import glob>>> glob.glob('*.py')['primes.py', 'random.py', 'quote.py']

3、命令行参数

通用工具脚本经常调用命令行参数。这些命令行参数以链表形式存储于 sys 模块的 argv 变量。

sys.argv
可以用sys.argv获取当前正在执行的命令行参数的参数列表(list)。
变量解释

  • sys.argv[0]当前程序名

  • sys.argv[1]第一个参数

  • sys.argv[2]第二个参数

len(sys.argv)-1 参数个数(减去文件名)

例如在命令行中执行 "python demo.py one two three" 后可以得到以下输出结果:

>>> import sys>>> print(sys.argv)['demo.py', 'one', 'two', 'three']

4、字符串正则匹配

re模块为高级字符串处理提供了正则表达式工具。可以说是爬虫必备,对于复杂的匹配和处理,正则表达式提供了简洁、优化的解决方案:如果只需要简单的功能,应该首先考虑字符串方法,因为它们非常简单,易于阅读和调试:

>>> 'tea for too'.replace('too', 'two')'tea for two'

re.match函数

re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。

函数语法

re.match(pattern, string, flags=0)

函数参数说明:

参数描述
pattern匹配的正则表达式
string要匹配的字符串。
flags标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。

匹配成功re.match方法返回一个匹配的对象,否则返回None。

我们可以使用group(num) 或 groups() 匹配对象函数来获取匹配表达式。

匹配对象方法描述
group(num=0)匹配的整个表达式的字符串,group() 可以一次输入多个组号,在这种情况下它将返回一个包含那些组所对应值的元组。
groups()返回一个包含所有小组字符串的元组,从 1 到 所含的小组号。

5、数学计算

math模块为浮点运算提供了对底层C函数库的访问:

>>> import math>>> math.cos(math.pi / 4)0.70710678118654757>>> math.log(1024, 2)10.0

在实际工作中,math标准库往往无法满足需求,我还需要扩展库:NumPy

NumPy(Numerical Python) 支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。

  • NumPy 官网 NumPy


6、发送邮件

有几个模块用于访问互联网以及处理网络通信协议。其中最简单的两个是用于处理从 urls 接收的数据的 urllib.request 以及用于发送电子邮件的 smtplib:

import smtplibsmtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] )

参数说明

  • host: SMTP 服务器主机。 你可以指定主机的ip地址或者域名如: runoob.com,这个是可选参数。

  • port: 如果你提供了 host 参数, 你需要指定 SMTP 服务使用的端口号,一般情况下 SMTP 端口号为25。

  • local_hostname: 如果 SMTP 在你的本机上,你只需要指定服务器地址为 localhost 即可。

Python SMTP 对象使用 sendmail 方法发送邮件,语法如下:

SMTP.sendmail(from_addr, to_addrs, msg[, mail_options, rcpt_options])

参数说明

  • from_addr: 邮件发送者地址。

  • to_addrs: 字符串列表,邮件发送地址。

  • msg: 发送消息

案例:

#!/usr/bin/python# -*- coding: UTF-8 -*- import smtplibfrom email.mime.text import MIMETextfrom email.header import Header sender = 'from@runoob.com'receivers = ['429240967@qq.com']  # 接收邮件,可设置为你的QQ邮箱或者其他邮箱 # 三个参数:第一个为文本内容,第二个 plain 设置文本格式,第三个 utf-8 设置编码message = MIMEText('Python 邮件发送测试...', 'plain', 'utf-8')message['From'] = Header("菜鸟教程", 'utf-8')   # 发送者message['To'] =  Header("测试", 'utf-8')        # 接收者 subject = 'Python SMTP 邮件测试'message['Subject'] = Header(subject, 'utf-8')  try:    smtpObj = smtplib.SMTP('localhost')    smtpObj.sendmail(sender, receivers, message.as_string())    print "邮件发送成功"except smtplib.SMTPException:    print "Error: 无法发送邮件"

7、日期和时间

datetime模块为日期和时间处理同时提供了简单和复杂的方法。

支持日期和时间算法的同时,实现的重点放在更有效的处理和格式化输出。

该模块还支持时区处理:

>>> # dates are easily constructed and fORMatted>>> from datetime import date>>> now = date.today()>>> nowdatetime.date(2003, 12, 2)>>> now.strftime("%m-%d-%y. %d %b %Y is a %A on the %d day of %B.")'12-02-03. 02 Dec 2003 is a Tuesday on the 02 day of December.'

时间的三种存在方式:时间对象,时间字符串,时间戳。

(1)字符串转datetime:

>>> string = '2014-01-08 11:59:58'>>> time1 = datetime.datetime.strptime(string,'%Y-%m-%d %H:%M:%S')>>> print time12014-01-08 11:59:58

(2)datetime转字符串:

>>> time1_str = datetime.datetime.strftime(time1,'%Y-%m-%d %H:%M:%S')>>> time1_str'2014-01-08 11:59:58'

(3)时间戳转时间对象:

>>>time1 = time.localtime()>>>time1_str = datetime.datetime.fromtimestamp(time1)

8、数据压缩

以下模块直接支持通用的数据打包和压缩格式:zlib,gzip,bz2,zipfile,以及 tarfile。

>>> import zlib>>> s = b'witch which has which witches wrist watch'>>> len(s)41>>> t = zlib.compress(s)>>> len(t)37>>> zlib.decompress(t)b'witch which has which witches wrist watch'>>> zlib.crc32(s)226805979

9、性能度量

有些用户对了解解决同一问题的不同方法之间的性能差异很感兴趣。Python 提供了一个度量工具,为这些问题提供了直接答案。

例如,使用元组封装和拆封来交换元素看起来要比使用传统的方法要诱人的多,timeit 证明了现代的方法更快一些。

>>> from timeit import Timer>>> Timer('t=a; a=b; b=t', 'a=1; b=2').timeit()0.57535828626024577>>> Timer('a,b = b,a', 'a=1; b=2').timeit()0.54962537085770791

相对于 timeit 的细粒度,:mod:profile 和 pstats 模块提供了针对更大代码块的时间度量工具。


10、测试模块

开发高质量软件的方法之一是为每一个函数开发测试代码,并且在开发过程中经常进行测试

doctest模块提供了一个工具,扫描模块并根据程序中内嵌的文档字符串执行测试。

测试构造如同简单的将它的输出结果剪切并粘贴到文档字符串中。

通过用户提供的例子,它强化了文档,允许 doctest 模块确认代码的结果是否与文档一致:

def average(values):    """Computes the arithmetic mean of a list of numbers.    >>> print(average([20, 30, 70]))    40.0    """    return sum(values) / len(values)import doctestdoctest.testmod()   # 自动验证嵌入测试

感谢各位的阅读,以上就是“Python标准库的操作方法有哪些”的内容了,经过本文的学习后,相信大家对Python标准库的操作方法有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: Python标准库的操作方法有哪些

本文链接: https://www.lsjlt.com/news/328583.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python标准库的操作方法有哪些
    这篇文章主要讲解了“Python标准库的操作方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python标准库的操作方法有哪些”吧!1、操作系统接口os模块提供了不少与操作系统相关联...
    99+
    2023-06-30
  • Python中json库的操作方法有哪些
    这篇文章主要介绍“Python中json库的操作方法有哪些”,在日常操作中,相信很多人在Python中json库的操作方法有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python中json库的操作方法...
    99+
    2023-07-05
  • python的内置标准库有哪些
    Python的内置标准库包含了多个模块,用于提供各种功能和工具。以下是一些常用的Python内置标准库:1. `math`:提供了数...
    99+
    2023-08-08
    python
  • Python语言的标准库有哪些
    这篇文章主要介绍“Python语言的标准库有哪些”,在日常操作中,相信很多人在Python语言的标准库有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python语言的标准库有哪些”的疑惑有所帮助!接下来...
    99+
    2023-06-17
  • python标准库有哪些函数
    Python标准库包含了许多内置函数和模块,提供了许多常用的功能和工具。以下是一些常用的Python标准库函数:1、os模块:提供了许多与操作系统交互的功能。例如:os.path.abspath(path):返回路径的绝对路径。os.pat...
    99+
    2023-10-25
    python python标准库
  • 常用Python标准库有哪些
    这篇文章主要为大家展示了“常用Python标准库有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“常用Python标准库有哪些”这篇文章吧。常用 Python...
    99+
    2024-04-02
  • Python 3.x标准库有哪些
    string:通用字符串操作 re:正则表达式操作 difflib:差异计算工具 textwrap:文本填充 unicodedata:Unicode字符数据库 stringprep:互联网字符串准备工具 rea...
    99+
    2023-01-31
    标准 有哪些 Python
  • Python标准库有哪些功能
    这篇文章将为大家详细讲解有关Python标准库有哪些功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Python的一大好处在于它有一套很有用的标准库(standard library)。标准库是随着Py...
    99+
    2023-06-17
  • python操作redis的方法有哪些
    这篇文章主要介绍了python操作redis的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python操作redis的方法有哪些文章都会有所收获,下面我们一起来看看吧。python 操作redis,...
    99+
    2023-06-05
  • Python redis的操作方法有哪些
    今天小编给大家分享一下Python redis的操作方法有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。位图操作bitm...
    99+
    2023-06-05
  • python网络请求标准库有哪些
    Python的标准库中有几个模块可以用于进行网络请求。它们分别是:1. urllib模块:提供了一系列用于处理URL的函数和类,包括...
    99+
    2023-08-08
    python
  • php操作数据库的方法有哪些
    这篇文章主要介绍“php操作数据库的方法有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php操作数据库的方法有哪些”文章能帮助大家解决问题。一、SQL语句SQL语句在数据库中是一种通用的查询语...
    99+
    2023-07-05
  • python列表的操作方法有哪些
    这篇“python列表的操作方法有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“python列表的操作方法有哪些”文章吧...
    99+
    2023-06-30
  • Python字典的操作方法有哪些
    这篇文章主要讲解了“Python字典的操作方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python字典的操作方法有哪些”吧!Python字典是另一种可变容器模型,且可存储任意类型...
    99+
    2023-07-06
  • Python列表有哪些操作方法
    这篇文章将为大家详细讲解有关Python列表有哪些操作方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、向List中添加元素的方法1.1 Python append()方法添加元素append() 方...
    99+
    2023-06-25
  • Python 标准库zipfile将文件夹加入压缩包的操作方法
    zipfile模块是python中一个处理压缩文件的模块,解决了不少我们平常需要处理压缩文件的需求。大家还知道Python zipfile 库可用于压缩/解压 zip 文件. 本文介...
    99+
    2024-04-02
  • C++标准库难点有哪些
    本篇内容主要讲解“C++标准库难点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++标准库难点有哪些”吧!在C++标准库中,有关缺省变量值的限制非常模糊。基于此,很多编译器允许开发人员将...
    99+
    2023-06-17
  • go语言标准库有哪些
    go语言标准库有fmt、net/http、os、io、time、encoding/json、sync、flag、strconv、math等等。详细介绍:1、fmt:用于格式化输入输出的包;2、net/http:用于构建Web应用程序和HTT...
    99+
    2023-12-11
    go语言 标准库
  • golang常用标准库有哪些
    golang常用标准库有fmt、io、net、os、time、sync、encoding、database/sql、unicode、math、crypto、runtime、flag、reflect和testing。详细介绍:1、fmt,提供...
    99+
    2023-12-14
    go语言 Golang Go标准库
  • Python标准库asyncio有什么作用
    这篇文章主要讲解了“Python标准库asyncio有什么作用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python标准库asyncio有什么作用”吧!asyncio 是 Python ...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作