您的位置:首页 > 编程语言 > Python开发

python 系统学习笔记(十一)---sys

2013-03-11 20:07 471 查看
sys.argv 命令行参数List,第一个元素是程序本身路径

sys.modules.keys() 返回所有已经导入的模块列表

sys.exc_info() 获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息

sys.exit(n) 退出程序,正常退出时exit(0)

sys.hexversion 获取Python解释程序的版本值,16进制格式如:0x020403F0

sys.version 获取Python解释程序的版本信息

sys.maxint 最大的Int值

sys.maxunicode 最大的Unicode值

sys.modules 返回系统导入的模块字段,key是模块名,value是模块

sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值

sys.platform 返回操作系统平台名称

sys.stdout 标准输出

sys.stdin 标准输入

sys.stderr 错误输出

sys.exc_clear() 用来清除当前线程所出现的当前的或最近的错误信息

sys.exec_prefix 返回平台独立的python文件安装的位置

sys.byteorder 本地字节规则的指示器,big-endian平台的值是'big',little-endian平台的值是'little'

sys.copyright 记录python版权相关的东西

sys.api_version 解释器的C的API版本

sys.version_info sys.version_info(2, 4, 3, 'final', 0) 'final'表示最终,也有'candidate'表示候选,表示版本级别,是否有后继的发行

sys.displayhook(value) 如果value非空,这个函数会把他输出到sys.stdout,并且将他保存进__builtin__._.指在python的交互式解释器里,'_'代表上次你输入得到的结果,hook是钩子的意思,将上次的结果钩过来

sys.getdefaultencoding() 返回当前你所用的默认的字符编码格式

sys.getfilesystemencoding() 返回将Unicode文件名转换成系统文件名的编码的名字

sys.setdefaultencoding(name)用来设置当前默认的字符编码,如果name和任何一个可用的编码都不匹配,抛出LookupError,这个函数只会被site模块的sitecustomize使用,一旦别site模块使用了,他会从sys模块移除

sys.builtin_module_names Python解释器导入的模块列表

sys.executable Python解释程序路径

sys.getwindowsversion() 获取Windows的版本

sys.stdin.readline() 从标准输入读一行,sys.stdout.write("a") 屏幕输出a

sys.startswith() 是用来判断一个对象是以什么开头的,比如在python命令行输入“'abc'.startswith('ab')”就会返回True

问题: 实现命令行读参数读文件
"python readfile.py c:/test.txt d:/test.txt"“python readfile.py --help”,那么sys.argv[0]就代表“test.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,
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.0'
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
--file    : file'''
else:
print 'Unknown option.'
sys.exit()
else:
for filename in sys.argv[1:]:
readfile(filename)


参照此例子修改sendemail.py
--to xx --content xx --topic xx
--attach xx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: