import time # 模塊調用語句 注意:模塊級導入通常放在文件頂部 import datetime print(time.time()) # 1550411181.441547: 時間戳 time.sleep(3) # CPU不工做,中止3秒 print(time.clock()) # 7.331190182070108e-07 計算CPU工做的時間 print(time.gmtime()) # UTC世界標準時間(英國):time.struct_time(tm_year=2019, tm_mon=2, # tm_mday=17, tm_hour=13, tm_min=54, tm_sec=45, tm_wday=6, tm_yday=48, tm_isdst=0) print(time.localtime()) # 本地時間:time.struct_time(tm_year=2019, tm_mon=2, tm_mday=17, # tm_hour=21, tm_min=59, tm_sec=18, tm_wday=6, tm_yday=48, tm_isdst=0) print(time.strftime('%Y-%m-%d %H:%M:%S')) # (重要)字符串(格式化)時間:2019-02-17 22:03:39 print(time.strptime('2019-02-17 22:03:39', '%Y-%m-%d %H:%M:%S')) # 時間結構的轉換,輸出見下行:# time.struct_time(tm_year=2019,tm_mon=2,tm_mday=17,tm_hour=22,tm_min=3,tm_sec=39,tm_wday=6,tm_yday=48,tm_isdst=-1
) # 單獨提取某個時間類型 a = time.strptime('2019-02-17 22:03:39', '%Y-%m-%d %H:%M:%S') print(a.tm_year) # 年 2019 print(a.tm_mon) # 月 2 print(a.tm_mday) # 日 17 print(a.tm_hour) # 時 22 print(a.tm_min) # 分 3 print(a.tm_sec) # 秒 39 print(a.tm_yday) # 一年的第多少天 48 print(a.tm_wday) # 一週的第多少天 6 print(time.ctime()) # 默認爲空 打印當前時間:Sun Feb 17 22:18:13 2019 print(time.ctime(3600)) # 把一個數轉換爲時間 從1970年開始計算 print(time.mktime(time.localtime())) # 把當前時間轉換爲時間戳:1550413367.0 print(datetime.datetime.now()) # 打印當前時間,友好表達方式:2019-02-28 14:33:37.570078
import random print(random.random()) # 生成一個0-1的隨機數 print(random.randint(1, 8)) # 隨機生成一個1-8之間的隨機整數(包括8) print(random.choice('sadasfga')) # 隨機取出字符串中的一個字母 print(random.sample('asfafaffgh', 2)) # 從一個序列裏面隨機取出兩個 print(random.randrange(1, 3)) # 1-3隨機取出一個,不包括3
例:隨機生成一個5位數的驗證碼,包含數字和字母python
def v_code(): code = '' for i in range(5): if i == random.randint(0, 3): add = random.randrange(10) # 0-9隨機取出一個數 else: add = random.randrange(65, 90) # 26個字母的ASCII值是65-90 add = chr(add) # 把ASCII轉換爲字母 code += str(add) # 字符串拼接 print(code)
法二:比上述方法更加簡單算法
def v_code(): code = '' for i in range(5): add = random.choice([random.randrange(10), chr(random.randrange(65, 90))]) code += str(add) # 字符串拼接 print(code) v_code()
import hashlib # 兩種方法:MD5和SHA兩種加密方法 不可逆結果 # MD5 算法 m = hashlib.md5() m.update('hello world'.encode('utf8')) # python3 默認utf8編碼 print(m.hexdigest()) # 獲取加密結果(16進制):5eb63bbbe01eeed093cb22bb8f5acdc3 m.update('long'.encode('utf8')) print(m.hexdigest()) # 7e5181dfabb9edf08a7075a8c18b0343 在前一次轉換的基礎上進行轉換,至關於對'hello worldlong'進行轉換 m2 = hashlib.md5() m2.update('hello worldlong'.encode('utf8')) print(m2.hexdigest()) # 7e5181dfabb9edf08a7075a8c18b0343 # SHA 算法 m = hashlib.sha256() m.update('hello world'.encode('utf8')) print(m.hexdigest()) # 算法更復雜:b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
1.解釋器進行交互:經過傳入的參數決定程序執行那段代碼windows
import sys # 解釋器進行交互 print(sys.argv) # 輸出的當前路徑 def post(): print('ok') def download(): pass if sys.argv[1] == 'post': post() elif sys.argv[1] == 'downlod': download()
打開電腦cmd,在文件路徑下用python執行該程序app
輸出列表,列表的第一個元素存的是文件名,能夠在「python sys模塊.py」 後面加參數控制程序的執行:dom
注意:通常狀況參數越多程序越靈活post
2.常見使用:編碼
import sys sys.exit(0) # 退出程序,能夠加參數,正常退出是exit(0) print(sys.platform) # win32 返回windows的平臺,能夠作跨平臺的判斷 print(sys.version) # 獲取python解釋器的當前版本信息 print(sys.path) # 返回模塊的搜索路徑,初始化時使用pythonpath環境變量的值
print(sys.platform) # 返回操做平臺名稱:win32
print(sys.path.append()) # 路徑添加,若是要使用的模塊不在python裏,在另外的文件下,就須要添加絕對路徑