通过代码实例了解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 相关文章推荐
wxpython 学习笔记 第一天
Mar 16 Python
使用Python判断IP地址合法性的方法实例
Mar 13 Python
Django中模型Model添加JSON类型字段的方法
Jun 17 Python
python根据unicode判断语言类型实例代码
Jan 17 Python
Django教程笔记之中间件middleware详解
Aug 01 Python
python利用小波分析进行特征提取的实例
Jan 09 Python
Python Django的安装配置教程图文详解
Jul 17 Python
django 基于中间件实现限制ip频繁访问过程详解
Jul 30 Python
Windows10下Tensorflow2.0 安装及环境配置教程(图文)
Nov 21 Python
pycharm通过ssh连接远程服务器教程
Feb 12 Python
Tensorflow 实现将图像与标签数据转化为tfRecord文件
Feb 17 Python
python用TensorFlow做图像识别的实现
Apr 21 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
B2K与车机的中波PK
2021/03/02 无线电
怎样在UNIX系统下安装MySQL
2006/10/09 PHP
php图片的裁剪与缩放生成符合需求的缩略图
2013/01/11 PHP
PHP目录操作实例总结
2016/09/27 PHP
PHP设计模式之工厂模式与单例模式
2016/09/28 PHP
Laravel日志用法详解
2016/10/09 PHP
JS 统计时间
2021/03/09 Javascript
超强的IE背景图片闪烁(抖动)的解决办法
2007/09/09 Javascript
jquery获取一组checkbox的值(实例代码)
2013/11/04 Javascript
在页面上用action传递参数到后台出现乱码的解决方法
2013/12/31 Javascript
浅谈JavaScript中定义变量时有无var声明的区别
2014/08/18 Javascript
jquery实现仿Flash的横向滑动菜单效果代码
2015/09/17 Javascript
jQuery实现根据滚动条位置加载相应内容功能
2016/07/18 Javascript
详解AngularJS验证、过滤器、指令
2017/01/04 Javascript
详解vue数据渲染出现闪烁问题
2017/06/29 Javascript
微信小程序之滚动视图容器的实现方法
2017/09/26 Javascript
Vue组件全局注册实现警告框的实例详解
2018/06/11 Javascript
简述vue状态管理模式之vuex
2018/08/29 Javascript
elementui之el-tebs浏览器卡死的问题和使用报错未注册问题
2019/07/06 Javascript
layui 关闭open弹出框 刷新table表格页面的方法
2019/09/16 Javascript
Vue通过provide inject实现组件通信
2020/09/03 Javascript
python实现微信跳一跳辅助工具步骤详解
2018/01/04 Python
python实现简单http服务器功能
2018/09/17 Python
python 制作自定义包并安装到系统目录的方法
2018/10/27 Python
python中正则表达式与模式匹配
2019/05/07 Python
Python字符串对象实现原理详解
2019/07/01 Python
用vue.js组件模拟v-model指令实例方法
2019/07/05 Python
Python检查 云备份进程是否正常运行代码实例
2019/08/22 Python
如何编写python的daemon程序
2021/01/07 Python
对Pytorch 中的contiguous理解说明
2021/03/03 Python
草莓网化妆品日本站:Strawberrynet日本
2017/10/20 全球购物
银行优秀员工事迹
2014/02/06 职场文书
汉语言文学职业规划
2014/02/14 职场文书
检查机关党的群众路线个人整改措施
2014/10/04 职场文书
放假通知格式
2015/04/14 职场文书
推普标语口号大全
2015/12/26 职场文书