import sys

def readfile(filename):
'Print a file to the standard output.'
f=file(filename)
while True:
line=f.readline()
if len(line)==:
break
print line,
f.close() if len(sys.argv) <:
print 'No action specified.'
sys.exit() if sys.argv[].startswith('--'):
option = sys.argv[][:]
if option == 'version':
print 'Version 1.2'
elif option =='help':
print'''\
This program prints files to the standard output.
Any number of files can be specified.
Option include:
--version:Prints the version number
--help:Display this help'''
else:
for filename in sys.argv[:]:
readfile(filename)

结果:

$ python cat.py
No action specified. $ python cat.py --help
This program prints files to the standard output.
Any number of files can be specified.
Options include:
--version : Prints 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
if you wanna make your work also fun:
use Python!

在python程序运行的时候,即不是在交互模式下,在sys.argv列表中总是至少有一个项目。它就是当前运行的程序名称,作为sys.argv[0]。

sys模块

>>>import sys
>>> sys.version

sys.version字符串给你提供安装的Python的版本信息。sys.version_info元组则提供一个更简单的方法来使你的程序具备python版本要求功能。

sys.stdin、sys.stdout、sys.stderr它们分别对应你的程序的标准输入、标准输出和标准错误流。

OS模块

这个模块包含普通的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。

即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在linux和widows下运行。

os.sep:可以取代操作系统特定的路径分隔符。

os.name字符串指示你正在使用的平台。比如windows是‘nt’,linux/Unix用户,它是‘posix’

os.getcwd()函数:得到当前工作目录,即当前python脚本工作的目录路径。

os.getenv()和os.putenv()函数:读取和设置环境变量。

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

os.remove()函数:删除一个文件

os.system()函数:运行shell命令

os.linesep字符串给出当前平台使用的行终止符。windows使用‘\r\n’,linux使用‘\n’,而Mac使用‘\r’。

os.path.split()函数:返回一个路径的目录名和文件名

os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录。

os.path.exists()函数:检验给出的路径是否真正存在。

简明python教程十----python标准库的更多相关文章

  1. python代码规范与标准库参考

    python代码规范与标准库参考 python代码规范参考文献: http://www.runoob.com/w3cnote/google-python-styleguide.html https:/ ...

  2. python入门灵魂5问--python学习路线,python教程,python学哪些,python怎么学,python学到什么程度

    一.python入门简介 对于刚接触python编程或者想学习python自动化的人来说,基本都会有以下python入门灵魂5问--python学习路线,python教程,python学哪些,pyth ...

  3. A Byte of Python(简明Python教程) for Python 3.0 下载

    A Byte of Python v1.92 (for Python 3.0) 官方下载地址,当前(20120730)  最新版本 1.92 基于Python3的 下载: http://files.s ...

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

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

  5. 介绍下Python的两个标准库 os 和 sys

    import sysprint(sys.path) #python 2 中报错 ....,打印的是绝对路径(***\\python\\lib\\site-packages# 第三方库,后退一级为标准库 ...

  6. 如何美观地打印 Python 对象?这个标准库可以简单实现

    前不久,我写了一篇文章回顾 Python 中 print 的发展历史 ,提到了两条发展线索: 明线:早期的 print 语句带有 C 和 Shell 的影子,是个应用程序级的 statement,在最 ...

  7. python:模块1——标准库简介

    一.文档 windows系统:IDLE中打开帮助文档 Tutorial:简单入门 Library Reference:python内置函数和标准库(看不完的,当做字典来查)(此外还有pypi(拍派社区 ...

  8. Python模块进阶、标准库、扩展库

    模块进阶 Python有一套很有用的标准库(standard library).标准库会随着Python解释器,一起安装在你的电脑中的. 它是Python的一个组成部分.这些标准库是Python为你准 ...

  9. python中时间处理标准库DateTime加强版库:pendulum

    DateTime 的时区问题 Python的datetime可以处理2种类型的时间,分别为offset-naive和offset-aware.前者是指没有包含时区信息的时间,后者是指包含时区信息的时间 ...

随机推荐

  1. Hadoop源码分析之客户端向HDFS写数据

    转自:http://www.tuicool.com/articles/neUrmu 在上一篇博文中分析了客户端从HDFS读取数据的过程,下面来看看客户端是怎么样向HDFS写数据的,下面的代码将本地文件 ...

  2. 人脸验证算法Joint Bayesian详解及实现(Matlab)

    python http://blog.csdn.net/cyh_24/article/details/49059475 github https://github.com/johnnyconstant ...

  3. adb shell error: more than one device and emulator

    adb shell error: more than one device and emulator 本文转载出处: http://blog.sina.com.cn/s/blog_7ffb8dd501 ...

  4. php中判断一个字符是否在字符串中

    strpos() - 查找字符串在另一字符串中第一次出现的位置(区分大小写) stripos() - 查找字符串在另一字符串中第一次出现的位置(不区分大小写) strrpos() - 查找字符串在另一 ...

  5. UNIQLO

    UNIQLO品牌的迅销公司建立于1963年,当年是一家销售西服的小服装店.公司现任董事长兼总经理柳井正早年毕业于早稻田大学经济学专业,1972年8月进入迅销公司,1984年9月就任公司董事长兼总经理. ...

  6. url 模式录制脚本web_concurrent_start和web_concurrent_end

    LoadRunner函数中文翻译系列之三--Concurrent Groupweb_concurrent_start 语法: int web_concurrent_start ( [char * Co ...

  7. ASp.Net控件的生命周期

    服务端事件 页面生命周期 描述 Init Initialization 初始化控件树 LoadViewState Unpack ViewState 从ViewState里提取出状态信息 LoadCon ...

  8. Qt计算两个时间差

    QTime startTime = QTime::currentTime(); QThread::msleep(SLEEP_TIME_MILL); QTime stopTime = QTime::cu ...

  9. 如何使用 awk 复合表达式

    导读 一直以来在查对条件是否匹配时,我们使用的都是简单的表达式.那如果你想用超过一个表达式来查对特定的条件呢?本文中,我们将看看如何在过滤文本和字符串时,结合多个表达式,即复合表达式,用以查对条件. ...

  10. Codeforces Round #190 (Div. 2).D

    一道贪心题. 可以分两种情况 1 .是没有把对面的牌全打败,那么只要用最大的可能去打攻击状态的牌. 2. 是将对面的牌全打败,那么只要保证打对面防守状态的花费最小,就可以保证最后的结果最大 两种情况下 ...