datetime模組,對日期、時間、時間戳的處理
datetime類 ,類方法 ,
today() 返回本地時區當前時間的datetime物件 ,
now(tz=none) 返回當前時間的datetime物件,時間到微秒,如果tz為none,返回 和today()一樣
utcnow() 沒有時區的當前時間
fromtimestamp(timestamp, tz=none) 從乙個時間戳返回乙個datetime物件
datetime物件
timestamp() 返回乙個到微秒的時間戳。
時間戳:格林威治時間2023年1月1日0點到現在的秒數
構造方法 datetime.datetime(2020, 2, 6, 16, 29, 43, 79043)
year、month、day、hour、minute、second、microsecond,取datetime物件的年月日時 分秒及微秒
weekday() 返回星期的天,周一0,週日6
isoweekday() 返回星期的天,周一1,週日7
date() 返回日期date物件
time() 返回時間time物件
replace() 修改並返回新的時間
isocalendar() 返回乙個三元組(年,週數,周的天)
類方法strptime(date_string, format) ,返回datetime物件
物件方法strftime(format) ,返回字串
字串format函式格式化
timedelta物件
datetime2 = datetime1 + timedelta
datetime2 = datetime1 - timedelta
timedelta = datetime1 - datetime2
構造方法
datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
year = datetime.timedelta(days=365)
total_seconds() 返回時間差的總秒數
標準庫time
time.sleep(secs) 將呼叫執行緒掛起指定的秒數
語法
[返回值 for 元素 in 可迭代物件 if 條件]
使用中括號,內部是for迴圈,if條件語句可選
返回乙個新的列表
編譯器會優化,不會因為簡寫而影響效率,反而因優化提高了效率 減少程式設計師工作量,減少出錯 簡化了**,但可讀性增強
[expr for item in iterable if cond1 if cond2]語法
(返回值 for 元素 in 可迭代物件 if 條件)
列表解析式的中括號換成小括號就行了
返回乙個生成器
和列表解析式的區別
生成器表示式是按需計算(或稱惰性求值、延遲計算),需要的時候才計算值
列表解析式是立即返回值
生成器 可迭代物件 迭代器
和列表解析式的對比
生成器表示式延遲計算,列表解析式立即計算
單從返回值本身來說,生成器表示式省記憶體,列表解析式返回新的列表
生成器沒有資料,記憶體占用極少,但是使用的時候,雖然乙個個返回資料,但是合起來佔 用的記憶體也差不多
列表解析式構造新的列表需要占用記憶體
單看計算時間看,生成器表示式耗時非常短,列表解析式耗時長
但是生成器本身並沒有返回任何值,只返回了乙個生成器物件
列表解析式構造並返回了乙個新的列表
列表解析式的中括號換成大括號{}就行了
立即返回乙個集合
列表解析式的中括號換成大括號{}就行了
使用key:value形式
立即返回乙個字典
Python 解析式 生成器
datetime模組 datetime物件 datetime物件 日期格式化 import datetime dt datetime.datetime.strptime 21 11 06 16 30 d m y h m print dt.strftime y m d h m s print form...
python高階 解析式 生成器
datetime datetime.datetime.today 返回本地時區當前時間的datetime物件 datetime.datetime.now tz none 返回當前時間的datetime物件,微秒 如果tz為none返回和today 一樣 datetime.datetime.utcno...
python 生成式和生成器
python的生成式 推導式 和等價的for迴圈完成的是相同的工作,不同的是生成式執行速度快,更加整潔。python的四個基礎資料結構 列表 集合 元組 字典 除了元組因為其資料特點沒有生成式,其餘三個都有,集合的生成式不太常見。生成式這個名字就知道是生成列表的 我們也可以用for來生成列表 用fo...