通过代码实例了解Python sys模块


Posted in Python onSeptember 14, 2020

sys-系统特定的参数和功能

该模块提供对解释器使用或维护的一些变量的访问,以及与解释器强烈交互的函数。它始终可用。

代码如下

#!/usr/bin/python
# Filename: cat.py

import sys

def readfile(filename):
  '''Print a file to the standard output.'''
  f = file(filename)
  while True:
    line = f.readline()
    if len(line) == 0:
      break
    print line, # notice comma
  f.close()

# Script starts from here
if len(sys.argv) < 2:
  print 'No action specified.'
  sys.exit()

if sys.argv[1].startswith('--'):
  option = sys.argv[1][2:]
  # fetch sys.argv[1] but without the first two characters
  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.
Options include:
 --version : Prints the version number
 --help  : Display this help'''
  else:
    print 'Unknown option.'
  sys.exit()
else:
  for filename in sys.argv[1:]:
    readfile(filename)

这个程序用来模仿linux中的cat命令。

在python程序运行的时候,即不是在交互模式下,在sys.argv[]列表中总是至少有一个项目,它就是当前运行的程序的名称,其他的命令行参数在这个项目之后。

另外,sys模块中还有其他特别有用的项目,sys.stdin sys.stdout sys.stderr分别对应标准输入、标准输出、标准错误。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python装饰器在Django框架下去除冗余代码的教程
Apr 16 Python
Python切换pip安装源的方法详解
Nov 18 Python
浅谈django开发者模式中的autoreload是如何实现的
Aug 18 Python
Python多进程并发与多线程并发编程实例总结
Feb 08 Python
python获取程序执行文件路径的方法(推荐)
Apr 26 Python
python调用百度REST API实现语音识别
Aug 30 Python
python Django 创建应用过程图示详解
Jul 29 Python
pytorch实现Tensor变量之间的转换
Feb 17 Python
将 Ubuntu 16 和 18 上的 python 升级到最新 python3.8 的方法教程
Mar 11 Python
python爬虫把url链接编码成gbk2312格式过程解析
Jun 08 Python
Python3.7安装PyQt5 运行配置Pycharm的详细教程
Oct 15 Python
浅谈matplotlib默认字体设置探索
Feb 03 Python
基于python实现简单C/S模式代码实例
Sep 14 #Python
Elasticsearch py客户端库安装及使用方法解析
Sep 14 #Python
基于python实现简单网页服务器代码实例
Sep 14 #Python
用python绘制樱花树
Oct 09 #Python
Python logging日志库空间不足问题解决
Sep 14 #Python
Python grpc超时机制代码示例
Sep 14 #Python
python/golang 删除链表中的元素
Sep 14 #Python
You might like
PHP详细彻底学习Smarty
2008/03/27 PHP
mysql 查询指定日期时间内sql语句实现原理与代码
2012/12/16 PHP
PHP模板引擎Smarty内置变量调解器用法详解
2016/04/11 PHP
php中get_magic_quotes_gpc()函数说明
2017/02/06 PHP
PHP中的empty、isset、isnull的区别与使用实例
2019/03/22 PHP
JavaScript 数组运用实现代码
2010/04/13 Javascript
html组件不可输入(只读)同时任何组件都有效
2013/04/01 Javascript
js将字符串转成正则表达式的实现方法
2013/11/13 Javascript
JavaScript 封装一个tab效果源码分享
2015/09/15 Javascript
基于javascript html5实现3D翻书特效
2016/03/14 Javascript
原生JS封装Ajax插件(同域、jsonp跨域)
2016/05/03 Javascript
微信小程序实现自定义modal弹窗封装的方法
2018/06/15 Javascript
vue用递归组件写树形控件的实例代码
2018/07/19 Javascript
laydate如何根据开始时间或者结束时间限制范围
2018/11/15 Javascript
JS随机密码生成算法
2019/09/23 Javascript
vue-cli在 history模式下的配置详解
2019/11/26 Javascript
js布局实现单选按钮控件
2020/01/17 Javascript
vue elementui 实现搜索栏公共组件封装的实例代码
2020/01/20 Javascript
js+html+css实现手动轮播和自动轮播
2020/12/30 Javascript
[46:14]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第一场 12.11
2020/12/16 DOTA
python检测服务器是否正常
2014/02/16 Python
Flask框架中密码的加盐哈希加密和验证功能的用法详解
2016/06/07 Python
pandas string转dataframe的方法
2018/04/11 Python
Python实现的当前时间多加一天、一小时、一分钟操作示例
2018/05/21 Python
pytorch实现线性拟合方式
2020/01/15 Python
K最近邻算法(KNN)---sklearn+python实现方式
2020/02/24 Python
PyCharm设置注释字体颜色以及是否倾斜的操作
2020/09/16 Python
python 怎样进行内存管理
2020/11/10 Python
python编程的核心知识点总结
2021/02/08 Python
利用CSS3实现动态的二级三级菜单效果实例源码
2017/01/04 HTML / CSS
爱与责任师德演讲稿
2014/08/26 职场文书
2014年教学管理工作总结
2014/12/02 职场文书
2015年实习单位评语
2015/03/25 职场文书
公司业务员管理制度
2015/08/05 职场文书
社区志愿服务活动感想
2015/08/07 职场文书
会计继续教育培训心得体会
2016/01/19 职场文书