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. python 神经网络实例

    #http://python.jobbole.com/82758/ # import numpy as np # # # # sigmoid function # def nonlin(x, deri ...

  2. SSH三大框架的知识题

    Struts 谈谈你对Struts的理解. 答: 1.struts是一个按MVC模式设计的Web层框架,其实它就是一个大大的servlet,这个Servlet名为ActionServlet,或是Act ...

  3. php -- in_array函数

    in_array    检查数组中是否存在某个值 说明 bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE  ...

  4. HttpHandler简单示例

    using System.Web; namespace MyWebApp { public class MyHttpHandler : IHttpHandler { public void Proce ...

  5. springmvc传递有特殊字符的路径参数

    因为hostKey这里是IP(例如127.0.0.1)包含了特殊字符.  实际传递到后台的是127.0.0少了一截 @GetMapping("/metrics/jobId/{jobId}/{ ...

  6. sql server函数(isnull,charindex,cast,自定义函数)

    SELECT charindex( CAST ( dbo.ufn_IsNullOrEmpty ('109722A3-622D-4FD4-A060-0287C933A89E', a.OUID) AS V ...

  7. swift - UIView 设置背景色和背景图片

    代码如下: let page = UIView() page.frame = self.view.bounds //直接设置颜色 page.backgroundColor = UIColor.gree ...

  8. 使用vue来做局部刷新

    我们都知道,vue的组件化是他最强大的核心所在,路由也是特别可爱的一部分,但是路由适合一些大型的组件,看url路径的时候会出现变化,但是有时候我们想要一些小的局部小刷新,这个时候就需要用到它的动态组件 ...

  9. 【黑金原创教程】【TimeQuest】【第一章】TimeQuest 静态时序分析模型的概念

      声明:本文为黑金动力社区(http://www.heijin.org)原创教程,如需转载请注明出处,谢谢! 黑金动力社区2013年原创教程连载计划: http://www.cnblogs.com/ ...

  10. requireJs官方使用教程(转)

    原文地址:http://www.requirejs.cn § 1.使用 § 1.1 加载 JavaScript 文件 RequireJS的目标是鼓励代码的模块化,它使用了不同于传统<script ...