Перебрать список питонов и получить 1 или 0 для результата матча - PullRequest
0 голосов
/ 14 мая 2018

У меня есть вопрос, я попытался поискать по форуму и посмотреть, есть ли что-то, что может мне помочь, но, к сожалению, я не смог вот так: В настоящее время я использую нашу систему AD и проверяю этот список, чтобы увидеть,если пользователь существует и в зависимости от того, дает ему доступ или нет

users = [AD user list]
for user in users:
    if user == "user x":
        print "you are in"
     else:
        print "denied"

Это прекрасно работает, и все, но я хочу знать, могу ли я сделать это немного более эффективным, так что, если "пользователь х"является 10-м в списке, этот код напечатает «отказано» 9 раз, прежде чем он напечатает «вы находитесь».

Возможно ли сначала как-то просмотреть список и, если там есть совпадение строк, дать1, а если не 0?Таким образом, когда я печатаю это, я получаю либо 1, либо 0.

Надеюсь, мой вопрос был ясен, и я предоставил достаточно подробностей.Я ценю всю помощь.

Ответы [ 2 ]

0 голосов
/ 14 мая 2018

Я уверен, что вы можете использовать .index здесь вместо полного цикла for.

try:
    users.index('user x')
    print 'You are in!' # assuming you are using python 2

catch ValueError:
    print 'Denied!'

Использование in также возможно.

if 'user x' in users:
    print 'You are in!'

else:
    print 'Denied!'
0 голосов
/ 14 мая 2018

Вы можете сделать это, используя оператор in.Например:

users = ['john', 'adam', 'susan']
exists = 'john' in users      # will be true
exists2 = 'robert' in users     # will be false

# for 1 or 0 output
exists = int(exists)
exists2 = int(exists2)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...