Beng Dou

一只站在树上的鸟儿,从来不会害怕树枝断裂,因为它相信的不是树枝,而是它自己的翅膀。

导航

Python基本模块介绍:sys、platform

sys模块

常用函数

sys.argv 命令行参数,实现从程序外部向程序传递参数。
sys.path 模块搜索路径。
sys.platform 获取当前系统平台。
sys.version 获取python版本
sys.exit([arg]) 程序中间的退出,arg=0为正常退出。
sys.getdefaultencoding(): 获取系统当前编码,一般默认为ascii。
sys.setdefaultencoding(): 设置系统默认编码
sys.getfilesystemencoding(): 获取文件系统使用编码方式,Windows下返回'mbcs',mac下返回'utf-8'.
sys.stdin,sys.stdout,sys.stderr 标准输入、标准输出和错误输出。

实例

  1、获取程序输入参数

# -*- coding: utf-8 -*-

import sys

if len(sys.argv[1:]) != 2:
    print "Please input 2 parameters.exit"
    sys.exit(1)
print sys.argv[0]
print sys.argv[1]
print sys.argv[2]

sys.exit(0)

  运行结果如下:

d:\temp>python test_sys.py para1 para2
test_sys.py
para1
para2

  说明:sys.argv[0]表示脚本名,sys.argv[1]、sys.argv[2].、...依次表示第1个参数、第2个参数...第n个参数

  2、获取脚本执行的文件名、函数名称、调用函数名称、行号

import sys

def get_cur_info():
    print sys._getframe().f_code.co_filename #获取当前文件名
    print sys._getframe().f_code.co_name  #获取当前函数名
    print sys._getframe(0).f_code.co_name #获取当前函数名
    print sys._getframe(1).f_code.co_name #调用该函数的函数的名字,如果没有被调用,则返回<module>
    print sys._getframe().f_lineno #当前行号
    
if __name__ == '__main__':
    get_cur_info()

运行结果如下:

D:\Program Files\Notepad++>python test.py
test.py
get_cur_info
get_cur_info
<module>
8

platform模块

常用函数

platform.platform()    获取操作系统平台
platform.uname()    获取操作系统信息
platform.system()    获取操作系统平台
platform.version()    获取操作系统版本
platform.machine()    获取计算机类型
platform.processor()    获取计算机处理器类型
platform.node()    获取计算机网络名
platform.python_version()    获取Python版本号

实例

>>> import platform
>>> platform.platform()
'Windows-10-10.0.10240'
>>> platform.uname()
('Windows', 'LAPTOP-H855JL4C', '10', '10.0.10240', 'AMD64', 'Intel64 Family 6 Model 78 Stepping 3, GenuineIntel')
>>> platform.system()
'Windows'
>>> platform.version()
'10.0.10240'
>>> platform.machine()
'AMD64'
>>> platform.processor()
'Intel64 Family 6 Model 78 Stepping 3, GenuineIntel'
>>> platform.node()
'LAPTOP-H855JL4C'
>>> platform.python_version()
'2.7.14'

posted on 2018-01-14 08:25  锅边糊  阅读(1457)  评论(0编辑  收藏  举报