(我現在使用python 2.7) 所以也許我不理解這行代碼是如何工作的,因爲對於一個我的程序的一部分,它似乎工作正常,而在另一部分,它沒有。任何()函數與python中的csv文件不行爲如何我期待它
elif not any(user in line for line in data):
基本上,我有我讀取和在變量「數據」存儲這樣csv文件:
f = open("scores.csv")
data = csv.reader(f)
變量「用戶」是從一個項框中的字符串在Tkinter中, 和變量「line」是for循環的任意名稱,就像在一段代碼中說的「對於我在範圍內(69):」
因此,我的大腦認爲這條線應該做的是,如果它無法在csv文件的任何行中找到用戶的匹配,應該在該語句下運行代碼。但似乎並沒有這樣做!
但是,後來在我的代碼,我嘗試類似的東西:
elif any(user in line for line in data):
,這似乎沒有任何問題的工作! 我不知道爲什麼,我在互聯網上找不到任何人試圖做這個大聲笑。
我試圖做一個登錄表單作爲一個初學者項目,因爲我有點知道Python,所以我想看看我能做什麼,但我似乎被卡在這裏。
我已經上傳我的代碼github上任何人都可以查看: https://github.com/Arunscape/login-form/blob/master/login.py
哦,不要擔心「密碼」的csv文件,他們是當然的假貨!
任何幫助表示讚賞。謝謝!!!
如果您可以創建一個可以運行以查看您描述的問題的最小示例,那將是理想選擇。正如你所描述的那樣,「如果它無法在csv文件的任何行中找到用戶的匹配,它應該在該語句下運行代碼」聽起來對我來說很合適。我認爲問題不在於這一行,而在於這一行的輸入(例如'data','user')。但是我不能確定沒有一個簡單的例子 – mgilson