我是編程新手,但我決定採用python。在Python中用raw_input查詢csv
我有用戶約登錄小時這個CSV文件看起來大致是這樣的(但含有大約200行):
用戶,項目,時間
用戶1,項目A,5
用戶1,項目B ,10
用戶2,項目A,7
用戶2,項目B,12`
我想從其中提取數據,通過幾個raw_inputs那會依賴於以前。例如。我會首先詢問你是否想看完整列表,如果是,打印所有內容並關閉。如果答案是否定的,那麼繼續下一個raw_input,例如。輸入您想要查看的用戶。
我有一些代碼,但我知道它仍然是非常基本的,但由於我是這個新手,我一直無法找出解決方案。幫助表示讚賞..
import csv
reader = csv.reader(open("loggedhours.csv", "rb"))
Team = raw_input("Do you want to see detailed team numbers? Y/N: ")
if Team =="y":
for User, Project, Hours in reader:
print User, Project, Hours
else:
print "ok"
print ""
User = raw_input("Enter user ID you wish to check: ")
if User == User in reader:
for User, Project, Hours in reader:
print User
else:
print "ok"
顯然有一些行缺少第二個raw_input之前,這將使程序完成。
但是,在回答== y時我也得到了正確的結果,但在回答!= y時我沒有得到正確的結果。 else
部分不起作用。
很明顯,那裏有錯誤,但如果你能指引我到正確的道路,我將不勝感激!
你能給我們準確的輸出嗎?它只是不打印其他部分的'ok'部分? – 2011-02-18 10:34:25
它打印所有的結果,所以我想了解爲什麼'其他'部分沒有被考慮。 – janecs 2011-02-18 13:58:42