@zakatzakatom

Как завершить программу выводом строки?

Нужно завершить программу без sys.exit()
если LanguageSetup(language) возращает False, то результатом программы должна быть строка 'no results'
все мои попытки заканчиваются ошибками
вот мой последний вариант
не понимаю как это сделать
import wikipedia


def IsLanguageExistInWikipedia(language):
    if language in wikipedia.languages():
        return True
    else:
        return False


def LanguageSetup(language):
    if IsLanguageExistInWikipedia(language):
        wikipedia.set_lang(language)
    else:
        return False

def CountWordsInPage(page):
    return len(page.summary.split())


def MaximumCountWordsOnPagesAndTitle(names):
    maximum = -1
    title = ""
    for name in names:
        count = CountWordsInPage(wikipedia.page(name))
        if count >= maximum:
            maximum = count
            title = name
            return f"{maximum} {title}"


def IsPageAvailable(name):
    try:
        wikipedia.page(name)
    except Exception:
        return False
    return True

def CreateChain(names):
    chain = [names[0]]
    for index in range(len(names) - 1):

        page = wikipedia.page(names[index])

        if names[index + 1] in page.links:
            chain.append(names[index + 1])
        else:

            for link in page.links:

                if not IsPageAvailable(link):
                    continue
                intermediate = wikipedia.page(link)

                if names[index + 1] in intermediate.links:
                    chain.append(intermediate.title)
                    chain.append(names[index + 1])
                    break
    return(chain)

input = ['Чуумпу далай', 'Хоту Америка', 'Континент', 'sah']
# input = input().split(', ')
if IsLanguageExistInWikipedia() == False:
    print('no results')
else:
    LanguageSetup(input[-1])
    print(MaximumCountWordsOnPagesAndTitle(input[0:-1]))
    print(CreateChain(input[0:-1]))


Тоесть если

def LanguageSetup(language):
    if IsLanguageExistInWikipedia(language):
        wikipedia.set_lang(language)
    else:
        return False


вернет False то в этом куске программы должен быть вывод 'no results'
input = ['Чуумпу далай', 'Хоту Америка', 'Континент', 'sah']
# input = input().split(', ')
if IsLanguageExistInWikipedia() == False:
    print('no results')
else:
    LanguageSetup(input[-1])
    print(MaximumCountWordsOnPagesAndTitle(input[0:-1]))
    print(CreateChain(input[0:-1]))

P.S. Я только учусь, так что сильно не ругайте за мой ужасный код
  • Вопрос задан
  • 66 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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