os模塊屬性:
在Mac平臺結果:python
1 、os.path 輸出python環境所在系統中路徑linux
print(os.path)shell
<module 'posixpath' from '/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/posixpath.py'>
二、os.name 輸出字符串指示正在使用的平臺。若是是window 則用'nt'表示,對於Linux/Unix用戶,它是'posix'。bash
print(os.name) # posixapp
三、os.curdir 系統表示當前目錄所用的字符串函數
print(os.curdir) # .ui
四、os.pardir 系統中表示父目錄的字符串spa
print(os.pardir) # ..命令行
五、os.sep 系統路徑分隔符unix
print(os.sep) # /
六、os.extsep 系統使用的擴展符
print(os.extsep) # .
七、os.altsep 備用路徑分隔符 None
print(os.altsep) # None
八、os.pathsep 在路徑中使用的組件分隔符
print(os.pathsep) # :
九、os.linesep 系統 換行符
print(os.linesep) # '\r' or '\n' or '\r\n'
十、os.defpath 可執行文件的默認搜索路徑
print(os.defpath) #:/bin:/usr/bin
十一、空設備文件路徑
print(os.devnull) #/dev/null
os模塊函數
一、os.getcwd() 獲取當前工做目錄,即當前python腳本工做的目錄路徑
cwd = os.getcwd()
print(cwd)
/Users/suxianglun/PycharmProjects/pythontest
二、os.chdir(r'/Users/') 切換當前工做目錄到指定目錄
os.chdir(r'/Users')
cwd = os.getcwd()
print(cwd)
/Users
三、os.makedirs('abc/allen/nv')# 建立多級目錄 ,若是文件存在就會報錯 FileExistsError: [Errno 17] File exists:
四、os.mkdir('efg') # 建立單級目錄
五、os.removedirs('abc/allen/nv') # 刪除多級目錄
六、os.remove('nv') # 刪除單級目錄
七、os.listdir('abc/')列出指定目錄下的全部文件和子目錄,包括隱藏文件,並以列表方式打印
print(os.listdir('abc/')) [allen]
八、os.system("ls") 運行shell命令,直接顯示
九、os.environ 獲取系統環境變量
environ({'PATH': '/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/Wireshark.app/Contents/MacOS:/Users/suxianglun/Library/Android/sdk/tools:/Users/suxianglun/Library/Android/sdk/platform-tools:', 'PYTHONPATH': '/Users/suxianglun/PycharmProjects/pythontest', 'ANDROID_SDK': '/Users/suxianglun/Library/Android/sdk', 'SHELL': '/bin/bash', 'PYTHONIOENCODING': 'UTF-8', 'SECURITYSESSIONID': '186a8', 'VERSIONER_PYTHON_PREFER_32_BIT': 'no', 'USER': 'suxianglun', 'TMPDIR': '/var/folders/bb/__kwbrgd34z42k0j5flvl7gm0000gn/T/', 'ANDROID_HOME': '/Users/suxianglun/Library/Android/sdk', 'COMMAND_MODE': 'unix2003', 'SSH_AUTH_SOCK': '/private/tmp/com.apple.launchd.bShDhPU8aK/Listeners', 'NDK_HOME': '/Users/suxianglun/Library/Android/sdk/ndk-bundle', 'XPC_FLAGS': '0x0', 'PYTHONUNBUFFERED': '1', 'VERSIONER_PYTHON_VERSION': '2.7', '__CF_USER_TEXT_ENCODING': '0x1F5:0x19:0x34', 'Apple_PubSub_Socket_Render': '/private/tmp/com.apple.launchd.Lmld2HUMqr/Render', 'LOGNAME': 'suxianglun', 'LC_CTYPE': 'zh_CN.UTF-8', 'XPC_SERVICE_NAME': 'com.apple.xpc.launchd.oneshot.0x10000005.pycharm', 'PWD': '/Users/suxianglun/PycharmProjects/pythontest', 'PYCHARM_HOSTED': '1', 'HOME': '/Users/suxianglun', '__PYVENV_LAUNCHER__': '/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/bin/python3.6'})
十、os.path
path = 'abc/allen/nv' path1 = 'abc/' path2 = 'edf/hij' 一、os.path.abspath(path) #返回path規範化的絕對路徑 /Users/suxianglun/PycharmProjects/pythontest/abc/allen/nv 二、os.path.split(path) #將path分割成目錄和文件名二元組返回 ('abc/allen', 'nv') 三、os.path.dirname(path) abc/allen #返回path的目錄。其實就是 os.path.split(path)返回列表中第一個元素 abc/allen 四、os.path.basename(path) nv #返回path最後的文件名。如何path以/或\結尾,那麼就會返回空值。即os.path.split(path)的第二個元素nv 以上三個之間的關係 os.path.split(path)=[os.path.dirname(path), os.path.basename(path)] 五、os.path.exists(path) True #若是path存在,返回True;若是path不存在,返回False 六、os.path.isabs(path) False #若是path是絕對路徑,返回True 七、os.path.isfile(path) False #若是path是一個存在的文件,返回True。不然返回False 八、os.path.isdir(path) True #若是path是一個存在的目錄,則返回True。不然返回False 九、os.path.join(path1, path2) abc/edf/hij #將多個路徑組合後返回,第一個絕對路徑以前的參數將被忽略 十、os.path.getatime(path) 1526625257.0 #返回path所指向的文件或者目錄的最後存取時間 十一、os.path.getmtime(path) 1526625250.0 #返回path所指向的文件或者目錄的最後修改時間
sys模塊 用於提供對解釋器相關的操做
一、sys.argv 獲取當前正在執行的命令行參數的參數列表(list)
print(sys.argv) ['/Users/suxianglun/PycharmProjects/pythontest/sys模塊.py'] print(sys.argv[0]) /Users/suxianglun/PycharmProjects/pythontest/sys模塊.py'
二、sys.platform系統名 Mac: darwin Windows:win32 Linux:linux
print(sys.platform) # darwin
三、sys.path 是一個目錄列表,供Python從中查找第三方擴展模塊。
print(sys.path) '''['/Users/suxianglun/PycharmProjects/pythontest', '/Users/suxianglun/PycharmProjects/pythontest', '/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python36.zip', '/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6', '/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload', '/usr/local/lib/python3.6/site-packages'] '''
四、sys.builtin_module_names 返回一個列表,包含內建模塊的名字。
res = sys.builtin_module_names print(res) ('_ast', '_codecs', '_collections', '_functools', '_imp', '_io', '_locale', '_operator', '_signal', '_sre', '_stat', '_string', '_symtable', '_thread', '_tracemalloc', '_warnings', '_weakref', 'atexit', 'builtins', 'errno', 'faulthandler', 'gc', 'itertools', 'marshal', 'posix', 'pwd', 'sys', 'time', 'xxsubtype', 'zipimport')
五、sys.exit(n) 調用sys.exit(n)能夠中途退出程序,當參數非0時,會引起一個SystemExit異常,從而能夠在主程序中捕獲該異常。
try: sys.exit(1) except SystemExit: print('SystemExit exit 1') print('exited')