我對Python很陌生,有一個問題。目前我正在使用它來計算消息傳出和消息傳入之間的時間。產生的起始時間,時間增量和唯一標識隨後將顯示在文件中。同樣,我正在使用Python 2.7.2如何更改顯示的數字的格式/數量?
目前它正在減去兩次,結果是0.002677777777(0.00是小時和分鐘),這是我不需要的。我如何格式化它,以秒開始(59.178533,00),秒數爲59。另外,有時python會顯示數字爲8.9999999 x e-05。我如何強制它始終顯示確切的數字。
def time_deltas(infile):
entries = (line.split() for line in open(INFILE, "r"))
ts = {}
for e in entries:
if " ".join(e[2:5]) == "OuchMsg out: [O]":
ts[e[8]] = e[0]
elif " ".join(e[2:5]) == "OuchMsg in: [A]":
in_ts, ref_id = e[0], e[7]
out_ts = ts.pop(ref_id, None)
yield (float(out_ts),ref_id[1:-1], float(in_ts) - float(out_ts))
INFILE = 'C:/Users/klee/Documents/Ouch20111130_cartprop04.txt'
import csv
with open('output_file.csv', 'w') as f:
csv.writer(f).writerows(time_deltas(INFILE))
下面是數據的小樣本:
61336.206267 - OuchMsg out: [O] enter order. RefID [F25Q282588] OrdID [X1F3500687 ]