1. random模塊 導入的是random模塊,格式是: import random 1.1 隨機小數 取隨機小數 : 數學計算。 print(random.random()) # 取0-1之間的小數print(random.uniform(1,2)) # 取1-2之間的小數 1.2 隨機整數 取 ...
1. random模塊
導入的是random模塊,格式是:
import random
1.1 隨機小數
取隨機小數 : 數學計算。
print(random.random()) # 取0-1之間的小數print(random.uniform(1,2)) # 取1-2之間的小數
1.2 隨機整數
取隨機整數 : 在彩票,抽獎中有使用。
print(random.randint(1,2)) # [1,2]print(random.randrange(1,2)) # [1,2)print(random.randrange(1,200,2)) # [1,2)
1.3 從列表中隨機抽取值
從一個列表中隨機抽取值 ,例如抽獎。
l = ['a','b',(1,2),123] print(random.choice(l))print(random.sample(l,2))
1.4 打亂列表順序
打亂一個列表的順序,在原列表的基礎上直接進行修改,節省空間,例如洗牌。
random.shuffle(l) print(l)
2. time模塊
time模塊主要是用來和時間打交道的
導入的是time模塊,格式是:
import time
時間格式:
'2018-8-20' '2018.8.20' 字元串數據類型 格式化時間 - 給人看的 結構化時間 1534732642.617272 浮點型數據類型,以s為單位 時間戳時間 - 給機器計算用的 1970 1 1 0:0:0
2.1 時間戳時間
print(time.time())
2.2 格式化時間
print(time.strftime('%Y-%m-%d %H:%M:%S')) # str format timeprint(time.strftime('%y-%m-%d %H:%M:%S')) # str format timeprint(time.strftime('%c'))
2.3 結構化時間
struct_time = time.localtime() # 北京時間print(struct_time)print(struct_time.tm_mon)
2.4 時間戳換成字元串時間
print(time.time()) struct_time = time.localtime(1500000000)# print(time.gmtime(1500000000))ret = time.strftime('%y-%m-%d %H:%M:%S',struct_time)print(ret)
2.5 字元串時間轉時間戳
struct_time = time.strptime('2018-8-8','%Y-%m-%d') print(struct_time)res = time.mktime(struct_time)print(res)
3. sys模塊
sys是和Python解釋器打交道的
導入的是sys模塊,格式是:
import sys
3.1 argv
print(sys.argv) # argv的第一個參數 是python這個命令後面的值usr = input('username')pwd = input('password')usr = sys.argv[1]pwd = sys.argv[2]if usr == 'xhh' and pwd == 'xhh0308': print('登錄成功')else: exit()
3.2 path
模塊是存在解釋器里的麽?不是。
模塊應該是存在硬碟上,
但是我在使用的時候 import --> 這個模塊才到記憶體中。
一個模塊能否被順利的導入,全看sys.path下麵有沒有這個模塊所在的。
自定義模塊的時候,導入模塊的時候,還需要再關註 sys.path。
3.3 modules
print(sys.modules) # 是我們導入到記憶體中的所有模塊的名字 : 這個模塊的記憶體地址print(sys.modules['re'].findall('\d','abc126'))
4. os模塊
導入的是os模塊,格式是:
import os
os是和操作系統交互的模塊
4.1 os模塊常用方法
os.makedirs('dirname1/dirname2') 可生成多層遞歸目錄 os.removedirs('dirname1') 若目錄為空,則刪除,並遞歸到上一級目錄,如若也為空,則刪除,依此類推 os.mkdir('dirname') 生成單級目錄;相當於shell中mkdir dirname os.rmdir('dirname') 刪除單級空目錄,若目錄不為空則無法刪除,報錯;相當於shell中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的大小
4.2 stat結構
註意:os.stat('path/filename') 獲取文件/目錄信息 的結構說明
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)是創建時間(詳細信息參見平臺的文檔)。
4.3 os模塊的屬性
os.sep 輸出操作系統特定的路徑分隔符,win下為"\\",Linux下為"/" os.linesep 輸出當前平臺使用的行終止符,win下為"\r\n",Linux下為"\n" os.pathsep 輸出用於分割文件路徑的字元串 win下為;,Linux下為: os.name 輸出字元串指示當前使用平臺。win->'nt'; Linux->'posix'