1. 程式人生 > >random與os,sys模塊

random與os,sys模塊

多層 一次 平臺 six 初始 包括 paths 最新 保護模式

random就是產生一個隨機數模塊
各種操作舉例
# print(random.randint(1,35)) #隨機產生一個[1,35]之間的數
# print(random.random()) #隨機生成一個0-1之間的小數
#
# print(random.uniform(1,10)) #隨機生成一個1-10之間的小數
# print(random.randrange(1,35,3)) #隨機生成[1,35)步長為三的整數
#
# lst= ["張無忌","周芷若","趙敏","小昭","珠兒","朱九真"]
# print(random.choice(lst)) #在列表中隨機找一個元素



os是系統操作模塊

os.makedirs(‘dirname1/dirname2‘) 可生成多層遞歸目錄 #
os.removedirs(‘dirname1‘) 若目錄為空,則刪除,並遞歸到上一級目錄,如若也為空,則刪除,以此類推 #
os.mkdir(‘dirname‘) 生成單級目錄;相當於shell中mkdir dirname
os.rmdir(‘dirname‘) 刪除單級空目錄,若目錄不為空,則報錯

os.listdir(‘dirname‘) 列出指定目錄下的所有文件和子目錄,包括隱藏文件,並以列表方式打印
os.remove() 刪除一個文件
os.rename("oldname","newname") 重命名文件/目錄

os.stat(‘path/filename‘) 獲取文件/目錄信息

os.system("bash command") 運行shell命令,直接顯示
os.popen("bash command).read() 運行shell命令,獲取執行結果
os.getcwd() 獲取當前工作目錄,即當前python腳本工作的目錄路徑
os.chdir("dirname") 改變當前腳本工作目錄;相當於shell下cd

# os.path
os.path.abspath(path) 返回path規範化的絕對路徑
os.path.split(path) 將path分割成目錄和文件名 元組返回
os.path.dirname(path) 返回path的目錄。其實就是os.path.split(path)的第一個元素
os.path.basename(path) 返回path最後的?件名如何path以/或\結尾,那麽就會返回空值。即os.path.split(path)的第二個元素

os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) 如果path是絕對路徑,返回True
os.path.isfile(path) 如果path是一個存在的文件,返回True。否則返回False
os.path.isdir(path) 如果path是一個存在的目錄,則返回True。否則返回False

os.path.join(path1[, path2[, ...]]) 將多個路徑組合後返回,第一個絕對路徑之前的參數

將被忽略
os.path.getatime(path) 返回path所指向的文件或者目錄的最後訪問時間
os.path.getmtime(path) 返回path所指向的文件或者目錄的最後修改時間
os.path.getsize(path) 返回path的大小
# 特殊屬性:
os.sep 輸出操作系統特定的路徑分隔符,win下為"\\",Linux下為"/"
os.linesep 輸出當前平臺使用的行終止符,win下為"\r\n",Linux下為"\n"

os.pathsep 輸出用於分割文件路徑的字符串 win下為;,Linux下為:
os.name 輸出字符串指示當前使用平臺。win->‘nt‘; Linux->‘posix‘

sys模塊
所有和python解釋器相關的都在sys模塊.

sys.argv 命令行參數List,第一個元素是程序本身路徑
sys.exit(n) 退出程序,正常退出時exit(0),錯誤退出sys.exit(1)
sys.version 獲取Python解釋程序的版本信息
sys.path 返回模塊的搜索路徑,初始化時使用PYTHONPATH環境變量的值
sys.platform 返回操作系統平臺名稱

重點:

os.stat() 屬性解讀:
stat 結構:
st_mode: inode 保護模式
st_ino: inode 節點號。
st_dev: inode 駐留的設備。
st_nlink: inode 的鏈接數。
st_uid: 所有者的用戶ID。
st_gid: 所有者的組ID。
st_size: 普通文件以字節為單位的大小;包含等待某些特殊文件的數據。
st_atime: 上次訪的時間

st_mtime: 最後一次修改的時間。
st_ctime: 由操作系統報告的"ctime"。在某些系統上(如Unix)是最新的元數據更改的時間,在
其它系統上(如Windows)是創建時間。

random與os,sys模塊