В строке
cur.execute("INSERT INTO data VALUES(?,?,?)", (item, ))
кроме item должны быть еще 2 параметра.
Вы вообще в курсе как работают списки, sqlite?
Думаю, вместо этого:
list = [login,email,password1]
if password2 == password1:
for item in list:
print(item)
cur.execute("INSERT INTO data VALUES(?,?,?)", (item, ))
conn.commit()
должно быть что-то вроде:
if password2 == password1:
cur.execute("INSERT INTO data VALUES(?,?,?)", (login,email,password1,)) # Только поменять параметры местами
conn.commit()