专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Python » python教程:简明 Python 教程 -- 第14章 Python标准库 »正文

python教程:简明 Python 教程 -- 第14章 Python标准库

来源: 发布时间:星期四, 2009年1月8日 浏览:17次 评论:0
  介绍

  Python标准库是随Python附带安装它包含大量极其有用模块熟悉Python标准库是十分重要如果你熟悉这些库中模块那么你大多数问题都可以简单快捷地使用它们来解决

  我们已经研究了些这个库中常用模块你可以在Python附带安装文档“库参考”节中了解Python标准库中所有模块完整内容

  sys模块

  sys模块包含系统对应功能我们已经学习了sys.argv列表它包含命令行参数

  命令行参数

  例14.1 使用sys.argv

#!/usr/bin/python
# Filename: cat.py
import sys
def readfile(filename):
  '''Pr a file to the standard output.'''
  f = file(filename)
  while True:
    line = f.readline
     len(line) 0:
      
    pr line, # notice comma
  f.close
# Script starts from here
len(sys.argv) < 2:
  pr 'No action specied.'
  sys.exit
sys.argv[1].startswith('--'):
  option = sys.argv[1][2:]
  # fetch sys.argv[1] but without the first two characters
   option 'version':
    pr 'Version 1.2'
  el option 'help':
    pr '''
This program prs files to the standard output.
Any number of files can be specied.
Options :
 --version : Prs the version number
 --help  : Display this help'''
  :
    pr 'Unknown option.'
  sys.exit
:
  for filename in sys.argv[1:]:
    readfile(filename)
  (源文件:code/cat.py)

  输出

$ python cat.py
No action specied.$ python cat.py --help
This program prs files to the standard output.
Any number of files can be specied.
Options :
 --version : Prs the version number
 --help  : Display this help
$ python cat.py --version
Version 1.2
$ python cat.py --nonsense
Unknown option.
$ python cat.py poem.txt
Programming is fun
When the work is done
you wanna make your work also fun:
    use Python!
  它如何工作

  这个用来模范Linux/Unix用户熟悉cat命令你只需要指明某些文本文件名字这个会把它们打印输出

  在Python运行时候即不是在交互模式下在sys.argv列表中总是至少有个项目它就是当前运行名称作为sys.argv[0](由于Python从0开始计数)其他命令行参数在这个项目的后

  为了使这个对用户更加友好我们提供了些用户可以指定选项来了解更多内容我们使用第个参数来检验我们是否被指定了选项如果使用了--version选项版本号将被打印出来类似地如果指定了--help选项我们提供些有关解释我们使用sys.exit退出正在运行和以往你可以看下help(sys.exit)来了解更多详情

  如果没有指定任何选项而是为提供文件名它就简单地打印出每个文件地每按照命令行中顺序个文件接着个文件地打印

  顺便说名称cat是 concatenate 缩写它基本上表明了功能——它可以在输出打印个文件或者把两个或两个以上文件连接/级连在起打印

  更多sys内容

  sys.version串给你提供安装Python版本信息sys.version_info元组则提供个更简单思路方法来使你具备Python版本要求功能

[swaroop@localhost code]$ python
>>> import sys
>>> sys.version
'2.3.4 (#1, Oct 26 2004, 16:42:40)
[GCC 3.4.2 20041017 (Red Hat 3.4.2-6.fc3)]'
>>> sys.version_info
(2, 3, 4, 'final', 0)
  对于有经验sys模块中其他令人感兴趣项目有sys.stdin、sys.stdout和sys.stderr它们分别对应你标准输入、标准输出和标准

  os模块

  这个模块包含普遍操作系统功能如果你希望你能够和平台无关这个模块是尤为重要即它允许在编写后不需要任何改动也不会发生任何问题就可以在Linux和Windows下运行个例子就是使用os.sep可以取代操作系统特定路径分割符

  下面列出了些在os模块中比较有用部分它们中大多数都简单明了

  os.name串指示你正在使用平台比如对于Windows它是'nt'而对于Linux/Unix用户它是'posix'

  os.getcwd得到当前工作目录即当前Python脚本工作目录路径

  os.getenv和os.putenv分别用来读取和设置环境变量

  os.listdir返回指定目录下所有文件和目录名

  os.remove用来删除个文件

  os.system用来运行shell命令

  os.linesep串给出当前平台使用行终止符例如Windows使用' 'Linux使用' '而Mac使用' '



  os.path.split返回个路径目录名和文件名

>>> os.path.split('/home/swaroop//code/poem.txt')
('/home/swaroop//code', 'poem.txt')
  os.path.isfile和os.path.isdir分别检验给出路径是个文件还是目录类似地os.path.existe用来检验给出路径是否真地存在

  你可以利用Python标准文档去探索更多有关这些和变量详细知识你也可以使用help(sys)等等

  概括

  我们已经学习了Python标准库中sys模块和os模块部分功能你应该利用Python标准文档去学习这两个模块以及其他模块更多内容

  接下来我们将要学习Python中剩余几个方面内容从而使我们Python课程更加 完整



相关文章

读者评论

发表评论

  • 昵称:
  • 内容: