@Yevgeni

Как можно написать этот код короче (предложите свои варианты)?

def check_username_and_description(self, status):
        if any(x in status.user.screen_name.lower() for x in BOT_SETTINGS['banned_username_userinfo_words']):
            return False
        if any(x in status.user.description.lower() for x in BOT_SETTINGS['banned_username_userinfo_words']):
            return False
        return True
  • Вопрос задан
  • 194 просмотра
Пригласить эксперта
Ответы на вопрос 3
Astrohas
@Astrohas
Python/Django Developer
def check_username_and_description(self, status):
    return not any(
            x in " ".join([status.user.screen_name, status.user.description]).lower()
            for x in BOT_SETTINGS['banned_username_userinfo_words']
        )

или
def check_username_and_description(self, status):
    return not bool(
        set((status.user.screen_name + " " +  status.user.description).lower()).intersection(
            set(BOT_SETTINGS['banned_username_userinfo_words'])
        )
    )
Ответ написан
@trofimovdev
Python
def check_username_and_description(self, status):
    return False if any(x in status.user.screen_name.lower() for x in BOT_SETTINGS['banned_username_userinfo_words']) or any(x in status.user.description.lower() for x in BOT_SETTINGS['banned_username_userinfo_words']) else True
Ответ написан
netpastor
@netpastor
Python developer
def check_username_and_description(self, status):
    return not any([word.lower() in BOT_SETTINGS['banned_username_userinfo_words'] 
        for word in (status.user.description, status.user.screen_name)])
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы