Ваша проблема в том, что если c
- пустой список, то код в цикле for
никогда не запускается и s
никогда не устанавливается, поэтому возникает ошибка:
UnboundLocalError: local variable 's' referenced before assignment
Что заошибка говорит вам, что вы ссылаетесь - то есть используете - s
до того, как оно будет иметь какое-либо значение - то есть до того, как ему будет присвоено значение.
Чтобы это исправить, просто убедитесь, что s
всегда назначаетсязначение:
s = 0
for x in c:
if x.benutzer == user:
s = 1
break
else:
s = 2