1. 程式人生 > >Python內置的操作系統模塊(os)與解釋器交互模塊(sys)

Python內置的操作系統模塊(os)與解釋器交互模塊(sys)

isa har 操作 light lib sys.argv gid ini rmdir

                 Python內置的操作系統模塊(os)與解釋器交互模塊(sys)

                                        作者:尹正傑

版權聲明:原創作品,謝絕轉載!否則將追究法律責任。

  

    本片博客只介紹Python調用操作系統的模塊即os模塊,以及Python和解釋器打交道的模塊即sys模塊。

一.操作系統模塊常用方法(os)

  1 #!/usr/bin/env python
  2 #_*_coding:utf-8_*_
  3 #@author :yinzhengjie
  4 #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/
5 #EMAIL:[email protected] 6 import os 7 8 """ 9 os模塊是與操作系統交互的一個接口。 10 """ 11 12 filepath = r"E:\Code\pycharm\文件存放處\python學習筆記" 13 14 print(os.getcwd()) # 獲取當前工作目錄,即當前python腳本工作的目錄路徑 15 16 print(os.chdir(filepath)) #
改變當前腳本工作目錄;相當於shell下cd,記住,這個是沒有返回值的喲 17 18 print(os.curdir) #返回當前目錄: (‘.‘) 19 20 print(os.pardir) #獲取當前目錄的父目錄字符串名:(‘..‘) 21 22 print(os.makedirs("E:\Code\pycharm\文件存放處\python學習筆記\Day11
")) #可生成多層遞歸目錄(創建目錄,類十余),生產完畢後返回一個None值 23 24 print(os.removedirs("E:\Code\pycharm\文件存放處\python學習筆記\Day11")) #若目錄為空,則刪除,並遞歸到上一級目錄,如若也為空,則刪除,依此類推(和上面的相反,就是刪除目錄。) 25 26 print(os.mkdir("DAY11")) #生成單級目錄;相當於shell中mkdir dirname,如果當前目錄已經存在改目錄就會報錯 27 28 print(os.rmdir("DAY11")) #刪除單級空目錄,若目錄不為空則無法刪除,報錯;相當於shell中rmdir dirname,如果當前目錄沒有改目錄就會報錯! 29 30 print(os.listdir("E:\Code\pycharm\文件存放處\python學習筆記")) #列出指定目錄下的所有文件和子目錄,包括隱藏文件,並以列表方式打印 31 32 33 # os.remove("yinzhengjie.txt") #刪除一個文件 34 35 # os.rename("yinzhengjie.txt","yzj.txt") #重命名文件/目錄 36 37 print(os.stat(E:\Code\pycharm\文件存放處\python學習筆記) ) #獲取文件/目錄信息 38 39 print(os.sep) #輸出操作系統特定的路徑分隔符,win下為"\\",Linux下為"/" 40 41 print(os.linesep) #輸出當前平臺使用的行終止符,win下為"\r\n",Linux下為"\n" 42 43 print(os.pathsep) #輸出用於分割文件路徑的字符串 44 45 print(os.name) #輸出字符串指示當前使用平臺。win->‘nt‘; Linux->‘posix‘ 46 47 # print(os.system("dir")) #運行shell或者windows命令,直接顯示命令的輸出結果,可以將這個數據存放在一個變量中喲 48 49 print(os.path.abspath("yinzhengjie.txt")) #返回path規範化的絕對路徑 50 51 print(os.path.split(r"E:\Code\pycharm\文件存放處\python學習筆記")) #將path分割成目錄和文件名二元組返回 52 53 print(os.path.dirname(r"E:\Code\pycharm\文件存放處\python學習筆記\Day9\yinzhengjie.txt")) #返回path的目錄。其實就是os.path.split(path)的第一個元素 54 55 print(os.path.basename(r"E:\Code\pycharm\文件存放處\python學習筆記\Day9\yinzhengjie.txt")) #返回path最後的文件名。如何path以/或\結尾,那麽就會返回空值。即os.path.split(path)的第二個元素 56 57 print(os.path.exists(r"E:\Code\pycharm\文件存放處\python學習筆記")) #如果path存在,返回True;如果path不存在,返回False 58 59 print(os.path.isabs(r"D:\python\daima\DAY1\user_info.txt")) #如果path是絕對路徑,返回True 60 61 print(os.path.isfile(r"D:\python\daima\DAY1\user_info.txt")) #如果path是一個存在的文件,返回True。否則返回False 62 63 print(os.path.isdir(r"E:\Code\pycharm\文件存放處\python學習筆記")) #如果path是一個存在的目錄,則返回True。否則返回False 64 65 print(os.path.join(r"E:\Code\pycharm\文件存放處\python學習筆記",r"Day9")) #將多個路徑組合後返回,第一個絕對路徑之前的參數將被忽略 66 67 print(os.path.getatime(r"E:\Code\pycharm\文件存放處\python學習筆記\Day10")) #返回path所指向的文件或者目錄的最後存取時間 68 69 print(os.path.getmtime(r"E:\Code\pycharm\文件存放處\python學習筆記\Day9")) #返回path所指向的文件或者目錄的最後修改時間 70 71 ‘‘‘ 72 更多關於os模塊的使用方法請參考:https://docs.python.org/2/library/os.html?highlight=os#module-os 73 ‘‘‘ 74 75 76 77 78 79 #以上代碼執行結果如下: 80 E:\Code\pycharm\文件存放處\python學習筆記\Day9 81 None 82 . 83 .. 84 None 85 None 86 None 87 None 88 [.idea, DAY1, Day10, DAY18, DAY2, DAY3, DAY4, DAY5, DAY6, DAY7, DAY8, Day9] 89 os.stat_result(st_mode=16895, st_ino=562949953671936, st_dev=4210844879, st_nlink=1, st_uid=0, st_gid=0, st_size=4096, st_atime=1520433760, st_mtime=1520433760, st_ctime=1518275451) 90 91 92 93 ; 94 nt 95 E:\Code\pycharm\文件存放處\python學習筆記\yinzhengjie.txt 96 (E:\\Code\\pycharm\\文件存放處, python學習筆記) 97 E:\Code\pycharm\文件存放處\python學習筆記\Day9 98 yinzhengjie.txt 99 True 100 True 101 False 102 True 103 E:\Code\pycharm\文件存放處\python學習筆記\Day9 104 1520433678.5179508 105 1520433643.7018182

二.與Python解釋器打交道的模塊(sys)

 1 #!/usr/bin/env python
 2 #_*_coding:utf-8_*_
 3 #@author :yinzhengjie
 4 #blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/
 5 #EMAIL:[email protected]
 6 
 7 import sys
 8 
 9 """
10     sys模塊是和Python解釋器打交道的模塊。
11 """
12 
13 
14 print(sys.version)              #獲取Python解釋程序的版本信息
15 
16 print(sys.platform)             #返回操作系統平臺名稱
17 
18 print(sys.path)                 #返回模塊的搜索路徑,初始化時使用PYTHONPATH環境變量的值
19 
20 # print(sys.exit(100))            #退出程序,正常退出時exit(0),如果不寫數字的話,默認就是0
21 
22 print(sys.argv[0])       #命令行參數List,第一個元素是程序本身路徑
23 
24 print(sys.maxsize)              #顯示當前系統最大的Int值
25 
26 ‘‘‘
27 更多使用方法請參考:https://docs.python.org/2/library/sys.html?highlight=sys#module-sys
28 ‘‘‘
29 
30 
31 
32 
33 #以上代碼執行結果如下:
34 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 07:18:10) [MSC v.1900 32 bit (Intel)]
35 win32
36 [E:\\Code\\pycharm\\文件存放處\\python學習筆記\\Day11, E:\\Code\\pycharm\\文件存放處\\python學習筆記, E:\\Code\\pycharm\\python\\python3.6\\python36.zip, E:\\Code\\pycharm\\python\\python3.6\\DLLs, E:\\Code\\pycharm\\python\\python3.6\\lib, E:\\Code\\pycharm\\python\\python3.6, C:\\Users\\Administrator\\AppData\\Roaming\\Python\\Python36\\site-packages, E:\\Code\\pycharm\\python\\python3.6\\lib\\site-packages]
37 E:/Code/pycharm/文件存放處/python學習筆記/Day11/1.sys模塊.py
38 2147483647

Python內置的操作系統模塊(os)與解釋器交互模塊(sys)