最初,我進行了一個練習,我必須將「RandomFile.txt」寫成7行,每行列出整數求和給出和當前時間。完成這個任務後,我被分配顯示每行增加1秒(即第一行= 5秒,第二行= 6秒,第三行= 7秒等),並且還增加了從'blank空白。'操作Python:datetime.now()輸出以顯示每行的遞增時間值
使用下面的代碼:
from datetime import datetime
from datetime import timedelta
with open("C:\Users\curnutte\Desktop\Assignment\Python Scripts\Python example\RandomFile.txt", "r") as inp:
with open("C:\Users\curnutte\Desktop\Assignment\Python Scripts\Python example\RandomFileOutput.txt", "w") as outp:
clock = datetime.now()
for i, line in enumerate(inp.readlines()):
total = 0
line = line.strip()
#print(line)
parts = line.split(",")
for part in parts:
try:
num = int(part)
total += num
except ValueError:
total = (" ".join(parts))
break
#print(type(total))
if type(total) == int:
total_time = clock
print (clock)
else:
total_time = clock + timedelta(days = 1)
print (clock + timedelta(days = 1))
outp.write("%s: " % total_time)
outp.write("{}\n".format(total))
這裏是 'RandomFile.txt:'
1,2
2,3
3,4
4,5
blank,blank
5,6
6,7
我得到的輸出:
2016-06-29 09:21:15.168000: 3
2016-06-29 09:21:15.168000: 5
2016-06-29 09:21:15.168000: 7
2016-06-29 09:21:15.168000: 9
2016-06-30 09:21:15.168000: blank blank
2016-06-29 09:21:15.168000: 11
2016-06-29 09:21:15.168000: 13
不過,我想實現以下輸出:
2016-06-29 09:21:15.168000: 3
2016-06-29 09:21:**16**.168000: 5
2016-06-29 09:21:**17**.168000: 7
2016-06-29 09:21:**18**.168000: 9
2016-06-30 09:21:**19**.168000: blank blank
2016-06-**30** 09:21:**20**.168000: 11
2016-06-**30** 09:21:**21**.168000: 13
我希望看到的更改已用粗體文本列出。我覺得這是一個相對簡單的任務,但是因爲我的用戶名會讓你相信,所以我對Python很新穎(甚至是一般的編程)。我認爲使用蜱可能會有所幫助,但真的有幫助不知道如何應用它們。
您提供的代碼在運行時會給我錯誤。但是,我按照您的建議使用了新的時鐘格式,這給了我想要的結果!我一直在爲此工作了幾天,發現這種簡單的改變就是解決問題的困惑。謝謝您的意見! – NewAtThis
@NewAtThis:哦,哎呀,對不起 - 我沒有真正徹底測試我的代碼。我希望它不需要太多的努力來調試它! – Michael0x2a
完全沒有!如果沒有你的協助,我的工作量會大大減少 – NewAtThis