python基本使用-Python标准库详细介绍与基本使用方式,超详细!
目录:
Python 标准库概览概览
操作系统接口
os 模块提供了很多与操作系统交互的函数:
应该用 import os 风格而非 from os import *。这样可以保证随操作系统不同而有所变化的 os.open() 不会覆盖内置函数 open()。
在使用一些像 os 这样的大型模块时内置的 dir() 和 help() 函数非常有用:
针对日常的文件和目录管理任务,shutil 模块提供了一个易于使用的高级接口:
glob 模块提供了一个函数用于从目录通配符搜索中生成文件列表:
>>> import glob
>>> glob.glob('*.py')
['primes.py', 'random.py', 'quote.py']
命令行参数 x
通用工具脚本经常调用命令行参数。这些命令行参数以链表形式存储于 sys 模块的 argv 变量。例如在命令行中执行 python demo.py one two three 后可以得到以下输出结果:
getopt 模块使用 Unix getopt() 函数处理 sys.argv。更多的复杂命令行处理由 argparse 模块提供。
错误输出重定向和程序终止
sys 还有 stdin, stdout 和 stderr 属性,即使在 stdout 被重定向时,后者也可以用于显示警告和错误信息:
>>> sys.stderr.write('Warning, log file not found starting a new one ')
Warning, log file not found starting a new one12
大多脚本的直接终止都使用 sys.exit()。
字符串正则匹配
re 模块为高级字符串处理提供了正则表达式工具。对于复杂的匹配和处理,正则表达式提供了简洁、优化的解决方案:
只需简单的操作时,字符串方法最好用,因为它们易读,又容易调试:
>>> 'tea for too'.replace('too', 'two')
'tea for two'
数学
math 模块为浮点运算提供了对底层C函数库的访问:
>>> import math
>>> math.cos(math.pi / 4.0)
0.70710678118654757
>>> math.log(1024, 2)
10.0
random 提供了生成随机数的工具:
互联网访问
有几个模块用于访问互联网以及处理网络通信协议。其中最简单的两个是用于处理从 urls 接收的数据的 urllib.request 以及用于发送电子邮件的 smtplib:
(注意第二个例子需要在 localhost 运行一个邮件服务器。)
日期和时间
datetime 模块为日期和时间处理同时提供了简单和复杂的方法。支持日期和时间算法的同时,实现的重点放在更有效的处理和格式化输出。该模块还支持时区处理。
数据压缩
以下模块直接支持通用的数据打包和压缩格式:zlib, gzip, bz2, lzma, zipfile 以及 tarfile。
性能度量
有些用户对了解解决同一问题的不同方法之间的性能差异很感兴趣。Python 提供了一个度量工具,为这些问题提供了直接答案。
例如,使用元组封装和拆封来交换元素看起来要比使用传统的方法要诱人的多。timeit 证明了后者更快一些:
相对于 timeit 的细粒度,profile 和 pstats 模块提供了针对更大代码块的时间度量工具。
质量控制
开发高质量软件的方法之一是为每一个函数开发测试代码,并且在开发过程中经常进行测试。
doctest 模块提供了一个工具,扫描模块并根据程序中内嵌的文档字符串执行测试。测试构造如同简单的将它的输出结果剪切并粘贴到文档字符串中。通过用户提供的例子,它发展了文档,允许 doctest 模块确认代码的结果是否与文档一致:
unittest 模块不像 doctest 模块那么容易使用,不过它可以在一个独立的文件里提供一个更全面的测试集:
“瑞士军刀”
Python 展现了“瑞士军刀”的哲学。这可以通过它更大的包的高级和健壮的功能来得到最好的展现。列如:
python基本使用-Python标准库详细介绍与基本使用方式,超详细!相关推荐
- Python 标准库之 shutil 高阶文件操作『详细』
Python标准库之 shutil 高阶文件操作『详细』 文章目录 Python标准库之 shutil 高阶文件操作『详细』 一.Python shutil介绍
- 仅需5道题轻松掌握Python命令行相关标准库 | Python技能树征题
仅需5道题轻松掌握Python命令行相关标准库 | Python技能树征题 0. 前言 1. 第 1 题:命令行日志记录 2. 第 2 题:将日志存储在磁盘上 3. 第 3 题:命令行参数解析 4. ...
- python concat函数 多张表_最全Python数据工具箱:标准库、第三方库和外部工具都在这里了 - Mr_YJY...
导读:Python数据工具箱涵盖从数据源到数据可视化的完整流程中涉及到的常用库.函数和外部工具.其中既有Python内置函数和标准库,又有第三方库和工具.这些库可用于文件读写.网络抓取和解析.数据连接 ...
- Python实现飞机大战-第二部分(附源码、素材、超详细教程)
飞机大战第二部分 1.前言 2.飞机射击 2.1.添加子弹的相关设置 2.2.创建文件bullet.py 2.3.修改game_functions.py 2.4.修改mian.py 2.5.射击效果 ...
- python标准库说明_Python标准库详细介绍与基本使用方式,超详细!
目录: Python 标准库概览概览 操作系统接口 os 模块提供了很多与操作系统交互的函数: 应该用 import os 风格而非 from os import *.这样可以保证随操作系统不同而有所 ...
- Python基础概念_11_标准库
标准库 12 标准库 12.1 简介 Python 标准库是随Python附带安装的,它包含大量极其有用的模块.熟悉 Python 标准库是十分重要的,因为如果你熟悉这些库中的模块,那么你的大多数问题 ...
- python pprint_如何美观地打印 Python 对象?这个标准库可以简单实现
♚ 豌豆花下猫,某985高校毕业生, 兼具极客思维与人文情怀 .专注python技术.数据科学和深度学习,力图创造一个有趣又有用的学习分享平台. 前不久,我回顾了 Python 中 print 的发展 ...
- print python 带回车_python标准库threading源码解读【二】
紧接着上一篇文章继续解析源码 甘蔗:python标准库threading源码解读[一]zhuanlan.zhihu.com 目录 Event的介绍和用法 Event源码解析 以后的内容尽量少一点并且 ...
- 把Python的200个标准库分类整理了下,供参考
Python有一套很有用的标准库(standard library),会随着Python解释器一起安装在你的电脑中的.它是Python的一个组成部分,不需要额外安装即可直接调用.这些标准库是Pytho ...
最新文章
- 2022-2028年中国手机配件行业发展前景战略及投资风险预测分析报告
- [Java基础]Scanner的使用(秋招在线笔试高频使用)版本:Java™ Platform Standard Ed. 8...
- AngularJS之Service(四)
- 用 API 提取、写入指定网站的 Cookie - 回复 bangrj 的问题
- Ecshop支付宝网银支付插件|支付宝网银直连插件|纯网关网银接口
- mysql中的乐观锁_MySQL中悲观锁和乐观锁到底是什么?
- python arima模型_Python时间序列处理之ARIMA模型的使用讲解
- 深入了解vue中slot和slot-scope
- 1 操作系统安全加固
- 虚拟机python pip安装不了_给在Linux虚拟机里运行的FreeBSD 12安装pip Python包管理器...
- java 1.4 下载_j2sdk1.4.2
- HTML基础网页布局代码写法
- 最简单的三步yum配置阿里源
- 公式冒号是什么意思_冒号是什么意思
- Arcgis空间连接
- CUDA编程第五章: 共享内存常量内存
- mysql in数量限制_SQL语句中in的个数限制为1000
- SpringData JPA联表分页查询需要使用countQuery属性
- 南邮 | 计算机图形学大作业:Skybox + Shadow volume
- 《墨菲定律》读书笔记(下)
热门文章
- NoSQL生态系统——事务机制,行锁,LSM,缓存多次写操作,RWN
- numpy amin amax
- Ubuntu 16.04- Package has no installation candidate解决方式,Ubuntu正确安装openssl-server的方法...
- Go的50坑:新Golang开发者要注意的陷阱、技巧和常见错误[2]
- Android知识点小结
- 浏览器更改实现webstrom等前端编辑器的同步更新
- jqury+css实现可弹出伸缩层
- CachedNetworkImage 图片缓存
- 工作5年左右的程序员如何在职业瓶颈期内快速提升自己的身价?提升后如何有效变现自己的高质量技能?...
- Jenkins+.Net Core+Git集成发布 - SkyMallCore快速开发平台