嘿我正在尝试从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但是没有从中读取而没有丢失此错误。我可能只是愚蠢。
答案 0 :(得分:2)
你在for循环中有user = []
行,所以在添加新值之前总是“清理”用户,所以只添加最后一个值,并删除前一个值。
你应该把它从循环中取出,就像你使用userdata一样。
(这就是它的样子,除非你的csv结构完全不同,每个用户数据不需要一个用户)