[英]Python error list index out of range when reading from CSV
嘿,我試圖從CSV文件的列表中讀取數據
def Load(): #Loads data from the csv that can be stored in functions
global userdata
global user
userdata = []
f = open('userdata.csv','r')
data = csv.reader(f)
for row in data:
user = []
for field in row:
user.append(field)
userdata.append(user)
f.close()
這是我正在遍歷的登錄功能
def Login(): #Login function
global userdata
Load()
global user
print('Please now login to your account')
x = False
while x == False:
usernameLog = input('Please enter your username: ')
j = len(userdata)
for i in range(0,j):
if usernameLog == userdata [i][0]: #Validates username
print('Username accepted')
time.sleep(1)
我的程序已成功寫入CSV,但只有在不拋出此錯誤的情況下才從中讀取。 我可能只是愚蠢。
您在for循環中有user = []
行,因此在附加新值之前,您總是“清理”用戶,因此僅添加最后一個值,並刪除前一個值。
您應該將其帶出循環,就像處理userdata一樣。
(這就是它的樣子,除非您的csv結構完全不同,並且您不需要每個用戶數據一個用戶)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.