按一定速度寫日誌
定義日誌格式
計算日誌記錄速度
按一定速度寫日誌
import time
import timeit
import logging
# 1.定義日誌格式
logging.basicconfig(level=logging.info,
format
='[%(levelname)s|%(asctime)s|%(name)s:%(lineno)s|(%(funcname)s)]%(message)s'
)logger = logging.getlogger(
)logger.setlevel(logging.info)
filehandler = logging.filehandler(
'test.log'
, mode=
'a+'
, encoding=
'utf-8'
)formatter = logging.formatter(
'[%(levelname)s|%(asctime)s|%(name)s:%(lineno)s|(%(funcname)s)]%(message)s'
)filehandler.setformatter(formatter)
logger.addhandler(filehandler)
# 2.計算日誌記錄速度
number =
10000
# 試驗次數
msg =
10**
100# 日誌內容
time_pass = timeit.timeit(
'logger.info(msg)'
, setup=
'from __main__ import logger, msg'
, number=number)
rate = number / time_pass # 每秒最大次數
print
(rate)
# 3.按一定速度寫日誌
rate_info =
5# 每秒info次數
rate_error =
2# 每秒error次數
interval =
10# 寫日誌的時間
if rate_info + rate_error >= rate:
print
('超過每秒最大次數'
) exit(-1
)_beg = time.time(
)while
true
: beg = time.time(
)[logger.info(1)
for _ in
range
(rate_info)
][logger.error(1)
for _ in
range
(rate_error)
] end = time.time(
) time.sleep(1-
(end - beg)
) _end = time.time(
) _interval = _end - _beg
if _interval >= interval:
print
('經過時間 {} s'
.format
(_interval)
)break
python取當前時間前後一定間隔的時間點
當前時間 datetime.datetime.now 時間間隔 datetime.timedelta 引數 數值 引數 weeks,days,hours,minutes,seconds,microseconds,milliseconds示例 import datetime nowtime datet...
按一定機率產生天氣狀況
public class weatherutil 每種天氣情況對應的機率 private int rates 數軸 private listlist new arraylist 計算數軸上的點 param j return private int getrandomrate int j return...
想寫程式,做人一定不要太嚴肅
不管本科或是非本科都通用,不相信我舉幾個例子,給你聽 例子一,資訊本科,本來是應徵程式,後來改當遊戲企劃 她的口頭禪就是怎麼辦,我提交 乙個臭蟲到版本管理的伺服器 等一下做出來版本,一定會爛掉。後來實在看她每天愁眉苦臉,就請她去當企劃了,免得搞到大家每天要安慰她,不要太緊張。二 例子二,非資訊本科系...