摘要:是否則檢驗指定的對象是否存在。由于的模塊實現主要調用庫,所以各個平臺可能有所不同。時間格式時間戳的方式通常來說,時間戳是指格林威治時間年月日時分秒北京時間年月日時分秒起至現在的總秒數。元組方式元組共有個元素,返回的函數主要有,,。
os模塊
os模塊提供了多數操作系統的功能接口函數。當os模塊被導入后,它會自適應于不同的操作系統平臺,根據不同的平臺進行相應的操作,在python編程時,經常和文件、目錄打交道,所以離不了os模塊
常用os命令 os.namename顧名思義就是"名字",這里的名字是指操作系統的名字,主要作用是判斷目前正在使用的平臺,并給出操作系統的名字,如Windows 返回 "nt"; Linux 返回"posix"。注意該命令不帶括號。
os.getcwd()全稱應該是"get current work directory",獲取當前工作的目錄,如:返回結果為:""E:python資料python-teavhday17""。注意該命令帶括號,除了第一個命令不帶括號之外,以下命令基本都帶括號。
os.listdir(path)列出path目錄下所有的文件和目錄名。以列表的形式全部列舉出來,其中沒有區分目錄和文件。
>>import os >>os.listdir() [".idea", "01_os模塊補充.py", "02_time模塊詳解.py", "03_datetime模塊詳解.py", "04_應用案例_系統監控.py", "05_namedtupled新型數據類型.py", "06_python與Excel.py", "07_excel需求.py", "08_今日作業_批量更新商品價格.py", "09_json模塊.py", "10_獲取IP對應的地理位置.py", "Book1.xlsx", "date.txt", "Excel應用參考", "json.txt", "produceSales.xlsx"]os.path命令
os.path.isfile(path)——判斷指定對象是否為文件。是返回True,否則False
os.path.isdir(path)——判斷指定對象是否為目錄。是True,否則False
os.path.exists(path)——檢驗指定的對象是否存在。是True,否則False
os.path.split(path)——返回路徑的目錄和文件名,即將目錄和文件名分開,而不是一個整體。此處只是把前后兩部分分開而已。就是找最后一個"/"。
os.path.abspath()——獲得絕對路徑
os.path.basename(path)——返回文件名
os模塊示例 查看文件修改日期#查看D:/python_need/data文件的修改日期 #并保存到當前目錄下的"date.txt"文件中 import os import time import codecs filename = "D:python_needdata.txt" ctime = os.path.getctime(filename) #輸出時間戳:1536580746.5799537 tuple_time = time.localtime(ctime) #將時間戳變成元組時間,time.struct_time(tm_year=2018, tm_mon=9, tm_mday=10, tm_hour=19, tm_min=59, tm_sec=6, tm_wday=0, tm_yday=253, tm_isdst=0) year = tuple_time.tm_year month = tuple_time.tm_mon day = tuple_time.tm_mday with codecs.open("date.txt","w","utf-8") as f: #打開方式一定要使用codecs.open(),否則中文字符會亂碼 f.write("%s的修改日期是%s年%s月%s日" %(filename,year,month,day))time模塊
在Python中,通常有這幾種方式來表示時間:1)時間戳 2)格式化的時間字符串 3)元組(struct_time)共九個元素。由于Python的time模塊實現主要調用C庫,所以各個平臺可能有所不同。
UTC(Coordinated Universal Time)即格林威治天文時間,為世界標準時間。中國北京為UTC+8。
DST(Daylight Saving Time)即夏令時。
時間戳(timestamp)的方式:通常來說,時間戳是指格林威治時間1970年01月01日00時00分00秒(北京時間1970年01月01日08時00分00秒)起至現在的總秒數。我們運行“type(time.time())”,返回的是float類型。返回時間戳方式的函數主要有time(),clock()等。
>>import time >>time.time() 1536645999.1539526
元組(struct_time)方式:struct_time元組共有9個元素,返回struct_time的函數主要有gmtime(),localtime(),strptime()。
元組時間元素如下:
>>import time >>time.localtime() time.struct_time(tm_year=2018, tm_mon=9, tm_mday=11, tm_hour=14, tm_min=7, tm_sec=31, tm_wday=1, tm_yday=254, tm_isdst=0)
字符串時間
>>import time >>time.ctime "Tue Sep 11 14:04:52 2018"時間格式的相互轉換
import time str_time = time.ctime()#Tue Sep 11 14:10:43 2018 tuple_time = time.localtime()#time.struct_time(tm_year=2018, tm_mon=9, tm_mday=11, tm_hour=14, tm_min=11, tm_sec=27, tm_wday=1, tm_yday=254, tm_isdst=0) timestamp = time.time()#1536646330.1479473 #把元組時間轉換成時間戳 print(time.mktime(tuple_time)) #把元組時間轉換成字符串時間 # strftime(format[, tuple]) -> string print(time.strftime("%Y-%m-%d-%H-%M-%S"))#指定格式 #把字符串時間轉換成元組時間 print(time.strptime("2018-9-10","%Y-%m-%d"))#指定格式datetime模塊
time模塊主要用于時間訪問和轉換,這個模塊提供了各種與時間相關的函數。但不是所有方法在任意平臺中有效。
datetime模塊提供了處理日期和時間的類,既有簡單的方式,又有復雜的方式。它雖然支持日期和時間算法,但其實現的重點是為輸出格式化和操作提供高效的屬性提取功能。
datetime模塊中定義的類
from datetime import time from datetime import datetime from datetime import timedelta today_time = datetime.today() #獲取當前本區時間,并以字符串格式顯示2018-09-11 15:04:25.317120 now_time = datetime.now() #返回指定時區日期時間的datetime對象,如果不指定tz參數則結果同上 delta = timedelta(days=3) #增減或減少一個delta print(now_time-delta) #返回三天前的時間,2018-09-08 15:07:11.904546綜合應用
實現對系統的監控
# 1. 獲取當前主機信息, 包含操作系統名, 主機名, 內核版本, 硬件架構等 # 2. 獲取開機時間和開機時長 # 3. 獲取當前登陸用戶 #win下沒有os.uname()用法 #解決方案,使用platform.uname() import platform import time import psutil import datetime info =platform.uname() #uname_result(system="Windows", node="DESKTOP-EN0LQJH", release="10", version="10.0.16299", machine="AMD64", processor="Intel64 Family 6 Model 142 Stepping 10, GenuineIntel") print("1. 主機信息".center(50, "*")) print(""" 操作系統: %s, 主機名: %s, 內核版本: %s, 硬件架構: %s """ %(info.system, info.node, info.release, info.machine)) print("2. 開機時間".center(50, "*")) boot_time = psutil.boot_time() #時間戳,1536040894.0 #datetime對象,datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]] #fromtimestamp,根據指定的時間戳創建一個datetime對象 boot_time = datetime.datetime.fromtimestamp(boot_time) #2018-09-04 14:01:34 now_time = datetime.datetime.now() #同一類型 delta_time = now_time-boot_time #獲取時間差 delta_time = str(delta_time).split(".")[0] print(""" 開機時間: %s 當前時間: %s 開機時長: %s """ %(boot_time,now_time, delta_time)) print("3. 當前登陸用戶".center(50, "*")) # 獲取當前登陸用戶的詳細信息, 需求是獲取用戶名和登陸主機 users = psutil.users() #[suser(name="Sheen_Star", terminal=None, host="0.4.0.0", started=1536585663.0, pid=None)] users = {"%s %s" %(user.name, user.host) for user in users} #集合實現數據去重 for user in users: print(" 當前登錄用戶有: %s" %(user))
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/42407.html
摘要:將用戶登陸信息綁定數據庫要求將用戶登陸時的信息,發送至后臺與數據庫進行比對,來判斷用戶是否可登陸文件,用來創建遠程連接的類主程序創建連接判斷用戶名是否存在返回的是語句查詢結果的個數如果為,沒有查到。 將用戶登陸信息綁定數據庫 要求將用戶登陸時的信息,發送至后臺與數據庫進行比對,來判斷用戶是否可登陸 #config.py文件,用來創建遠程連接的類 class DB: HOST =...
摘要:網頁顯示數據庫信息使用我們剛學習的,在網頁中顯示數據庫表中的數據。在開始運行程序前,確保數據庫中執行過創建表和創建用戶的操作,詳見鏈接描述。 網頁顯示數據庫信息 使用我們剛學習的flask_sqlalchemy,在網頁中顯示數據庫表中的數據。在開始運行程序前,確保數據庫中執行過創建表和創建用戶的操作,詳見鏈接描述。 # 模板文件templates/list.html {% extend...
閱讀 1733·2021-10-18 13:30
閱讀 2608·2021-10-09 10:02
閱讀 2965·2021-09-28 09:35
閱讀 2091·2019-08-26 13:39
閱讀 3522·2019-08-26 13:36
閱讀 1950·2019-08-26 11:46
閱讀 1135·2019-08-23 14:56
閱讀 1694·2019-08-23 10:38