zhangpengfei00 发表于 2015-4-20 06:24:16

【循序渐进学Python】11.常用标准库

  安装完Python之后,我们也同时获得了强大的Python标准库,通过使用这些标准库可以为我们节省大量的时间。这里是一些常用标准库的简单说明。更多的标准库的说明,可以参考Python文档

sys 模块
  sys模块能够访问与Python解释器紧密联系的变量和函数,下面是 sys 模块中一些常用的函数和变量:



argv                  命令行参数,包括脚本名称
exit()         退出当前程序,可选参数给定的返回值或错误信息
modules               隐射模块名字到载入模块的字典
path                  查看模块所在目录的目录名列表
platform            类似sunos5或win32平台标识符
stdin               标准输入流——一个类文件(file-like)对象
stdout                标准输出流——一个类文件对象
stderr                标准错误流——一个类文件对象
  
  下面的示例通过 argv 获取命令行参数,然后将其反转:



import sys
args = sys.argv # 跳过第一个元素(脚本名称)
args.reverse()
print ' '.join(args)
  更多使用方法,可以查看Python 文档:http://docs.python.org/2/library/sys.html
  

os模块
  os模块提供了很多访问操作系统服务的功能。下面是一些常用的函数和变量:



environ                会环境变量进行隐射
system(command)      在子shell中执行操作系统命令
sep                  路径中的分隔符
pathsep                分隔路径的分隔符
linesep                行分隔符('\n','\r','\r\n')
urandom(n)             返回n自己的加密强随机数
  
  下面示例通过 environ 变量来查询环境变量中的 path 变量值:



import os
# C:\Perl64\site\bin;C:\Perl64\...
print os.environ['path']
  
  根据不同的操作系统返回对于的路径分隔符:



# -- coding: utf-8 --
import os
# 返回操作系统中的路径分隔符
# windows:'\'
# UNIX/LINUX:'/'
# Mac OS:':'
print os.sep
  更多使用方法,可以查看Python 文档:http://docs.python.org/2/library/os.html
  

fileinput 模块
  fileinput 模块可以轻松的遍历文本文件的所有行。下面是 fileinput 模块中重要的函数:



input(])      便于遍历多个输入流中的行
filename()                              返回当前文件的名称
filelineno()                            返回当前处理文件当前(累计)行数
isfirstline()                           检查当前行是否是文件的第一行
isstdin()                               检查最后一行是否来自sys.stdin
nextfile()                              关闭当前文件,移动到下一个文件
close()                                 关闭序列
  更多使用方法,可以查看Python 文档:http://docs.python.org/2/library/fileinput.html
  

集合
  集合(set)在Python 2.3 引入。Set类位于 sets 模块中。使用集合不需要导入,直接使用即可:



print set(range(10))
# set()
  
  集合是由序列(或者其他可迭代对象)构建的,它们主要用于检查成员资格,因此副本是被忽略的:



print set()
# set()
  
  除了检查成员资格,还可以使用标准的集合操作,如:并集和交集,既可以使用方法,也可以直接使用运算操作符:



1 a = set()
2 b = set()
3 print a.union(b) # set()
4 print a | b # set()
5
6 c = a & b
7 print c.issubset(a) # True
8
9 print c
页: [1]
查看完整版本: 【循序渐进学Python】11.常用标准库