Python中模塊之sys的功能介紹


                                         sys模塊的功能介紹

1. sys的變量

  1. argv

    命令行參數

    方法:sys.argv
    返回值:list
    例如:test1.py文件中有兩句語句1.import sys 2.print(sys.argv)
         python test1.py 2 3 df
     >>> ['test1.py','2','3','df']
    #該方法返回的列表中第一個元素為程序的路徑,會把執行參數傳入到列表中
    
  2. path

    模塊的搜索路徑

    方法:sys.path
    返回值:list
    例如:print(sys.path)
     >>> ['', 'D:\\python3.5.2\\python35.zip', 'D:\\python3.5.2\\DLLs', 'D:\\python3.5.2\\lib', 'D:\\python3.5.2', 'D:\\python3.5.2\\lib\\site-packages']
    #列表中第一個路徑代表當前路徑
    
  3. modules

    模塊路徑字典

    方法:sys.modules
    返回值:dict
    #該方法返回一個字典,模塊名為key,模塊路徑為value
    
  4. stdin

    標准輸入

  5. stdout

    標准輸出

  6. stderr

    標准錯誤

  7. last_type

    最后捕獲的異常類型

  8. last_value

    最后捕獲的異常值

  9. last_traceback

    回到上次捕獲的異常

  10. copyright

    解釋器的版權通知

  11. exec_prefix

    機器特定的Python庫

  12. executable

    可執行的二進制文件的絕對路徑

    方法:sys.executable
    返回值:str
    例如:print(sys.executable)
     >>> 'D:\\python3.5.2\\python.exe'
    
  13. float_info

    浮點信息的結構

    方法:sys.float_info
    返回值sys.float_info
    例如:print(sys.float_info)
     >>> sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)
    #返回浮點信息的限定范圍
    
  14. floatreprstyle

    字符串表示浮點的repr方法

    方法:sys.float_repr_style
    返回值:str
    例如:print(sys.float_repr_style)
     >>> 'short'
    
  15. hash_info

    哈希信息的結構

    方法:sys.hash_info
    返回值:sys.hash_info
    #該變量的使用同float_info類似
    
  16. hexversion

    版本信息作為一個整數

  17. implementation

    Python實現的信息

    方法:sys.impelementation
    返回值:types.SimpleNamespace
    #該變量的使用同float_info類似
    
  18. int_info

    整數實現的信息

    方法:sys.int_info
    返回值:sys.int_info
    #該變量的使用同float_info類似
    
  19. maxsize

    最大支持的長度

    方法:sys.maxsize
    返回值:int
    例如:print(sys.maxsize)
     >>> 9223372036854775807
    
  20. maxunicode

    最大編碼點

    方法:sys.maxunicode
    返回值:int
    例如:print(sys.maxunicode)
     >>> 1114111
    
  21. platform

    平台標識符

    方法:sys.platform
    返回值:str
    例如:print(sys.platform)
     >>> 'win32'
    #上述結果為windows64位的操作系統
    
  22. prefix

    python庫

    方法:sys.prefix
    返回值:str
    例如:print(sys.prefix)
     >>> 'D:\\python3.5.2'
    #返回的是python庫的路徑    
    
  23. thread_info

    線程的實現信息

    方法:sys.thread_info
    返回值:sys.thread_info
    #該變量的使用同float_info類似
    
  24. version

    當前版本

    方法:sys.version
    返回值:str
    例如:print(sys.version)
     >>> 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)]
    #python解釋器當前的版本信息
    
  25. dllhandle

    整數處理

  26. winver

    版本號

    方法:sys.winver
    返回值:str
    #該變量是對version的簡化提取其返回值中的3.5這個版本號。
    

2. sys的方法

  1. displayhook

    打印對象並保存在內部

    方法:sys.displayhook(obj)
    返回值:object
    #該方法類似於stdout和內置builtins的結合
    
  2. excepthook

    打印異常及其追蹤用法

    方法:sys.excepthook(exctype,value,traceback)
    返回值:obj
    
  3. exc_info

    當前異常的線程安全信息

  4. exit

    退出解釋器

    方法:sys.exit()
    返回值:None
    #該方法一般用exit()方法替代。
    
  5. getprofile

    獲取全局配置函數

    方法:sys.getprofile()
    返回值:function
    #該方法需要配合setprofile方法一起使用,返回值為函數名
    
  6. getrefcount

    對象引用計數

  7. getrecursionlimit

    最大遞歸深度

    方法:sys.getrecursionlimit()
    返回值:int
    例如:print(sys.getrecursionlimit())
     >>> 1000
    #遞歸的最大深度為1000層。該最大層為默認值,可以通過setrecursionlimit方法進行修改。
    
  8. getsizeof

    獲取對象的字節大小

  9. gettrace

    獲取全局調試跟蹤函數

    方法:sys.gettrace()
    返回值:function
    #該方法需要配合settrace方法一起使用,獲取調試函數名
    
  10. setcheckinterval

    控制多久事件解釋器檢查

  11. setprofile

    設置全局配置函數

    方法:sys.setprofile(func)
    返回值:None
    #該方法把一個函數設置為全局配置函數,傳入的函數需要3或3個以上參數,該方法可以配合getprofile方法使用。 
    
  12. setrecursionlimit

    設置遞歸最大層數

    方法:sys.setrecursionlimit(int)
    返回值:None
    #通過該方法修改遞歸的最大層數。
    
  13. settrace

    設置全局跟蹤調試函數

    方法:sys.settrace(func)
    返回值:None
    #該方法的使用可以參考setprofile方法,傳入的函數可以無參數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM