码迷,mamicode.com
首页 > 编程语言 > 详细

python 模块知识

时间:2019-01-05 12:16:13      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:ons   程序   close   .exe   argv   ota   读一行   多个   names   

sys模块

sys模块主要是用于对python解释器相关操作

  • sys.argv #命令行参数List,第一个元素是程序本身路径
  • sys.path #返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
  • sys.modules.keys() #返回所有已经导入的模块列表
  • sys.modules #返回系统导入的模块字段,key是模块名,value是模块
  • sys.exc_info() #获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息
  • sys.exit(n) #退出程序,正常退出时exit(0)
  • sys.hexversion #获取Python解释程序的版本值,16进制格式如:0x020403F0
  • sys.version #获取Python解释程序的版本信息
  • sys.platform #返回操作系统平台名称
  • sys.maxint # 最大的Int值
  • sys.stdout #标准输出
  • sys.stdout.write(‘aaa‘) #标准输出内容
  • sys.stdout.writelines() #无换行输出
  • sys.stdin #标准输入
  • sys.stdin.read() #输入一行
  • 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 #‘final‘表示最终,也有‘candidate‘表示候选,表示版本级别,是否有后继的发行
  • sys.getdefaultencoding() #返回当前你所用的默认的字符编码格式
  • sys.getfilesystemencoding() #返回将Unicode文件名转换成系统文件名的编码的名字
  • sys.builtin_module_names #Python解释器导入的内建模块列表
  • sys.executable #Python解释程序路径
  • sys.getwindowsversion() #获取Windows的版本
  • sys.stdin.readline() #从标准输入读一行,sys.stdout.write(a) 屏幕输出a
  • sys.setdefaultencoding(name) #用来设置当前默认的字符编码(详细使用参考文档)
  • sys.displayhook(value) #如果value非空,这个函数会把他输出到sys.stdout(详细使用参考文档)
技术分享图片
sys.arg 获取位置参数
print(sys.argv)

执行该脚本,加参数的打印结果
python3 m_sys.py  1 2 3 4 5

[‘m_sys.py‘, ‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘]
可以发现 sys.arg返回的是整个位置参数,类似于shell的$0 $1...
sys.exit(n) 程序退出,n是退出是返回的对象
sys.version 获取python版本
>>> sys.version
‘3.5.1 (v3.5.1:37a07cee5969, Dec  5 2015, 21:12:44) \n[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)]‘
sys.path 返回模块的搜索路径列表,可通过添加自定义路径,来添加自定义模块
>>> sys.path
[‘‘, ‘/Library/Frameworks/Python.framework/Versions/3.5/lib/python35.zip‘, ‘/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5‘, ‘/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/plat-darwin‘, ‘/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/lib-dynload‘, ‘/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages‘]

sys.platform 返回当前系统平台 linux平台返回linux,windows平台返回win32,MAC返回darwin
>>> sys.platform
‘darwin
sys.stdout.write() 输出内容
>>> sys.stdout.write(‘asd‘)
asd3
>>> sys.stdout.write(‘asd‘)
asd3
>>> sys.stdout.write(‘as‘)
as2
常用
技术分享图片
import sys
import time

def view_bar(num,total):

    rate = num / total
    rate_num =  int(rate * 100)
    #r = ’\r %d%%’ %(rate_num)

    # \r后面的内容会覆盖前面的内容
    r = \r%s>%d%% % (= * rate_num, rate_num,)
    sys.stdout.write(r)
    sys.stdout.flush

def my(num):
    r=\r%s>%d%%%(=*num,num)
    sys.stdout.write(r)
    # python的stdout是有缓冲区的
    sys.stdout.flush
    # 可以用在网络程序中多线程程序,多个线程后台运行,同时要能在屏幕上实时看到输出信息

if __name__ == __main__:
    for i in range(0, 101):
        time.sleep(0.1)
        # view_bar(i, 100)
        my(i)
进度条实例

 

python 模块知识

标签:ons   程序   close   .exe   argv   ota   读一行   多个   names   

原文地址:https://www.cnblogs.com/zhaowei5/p/10223760.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!