• Почему моя функция всё время возвращает "False"?

    Vindicar
    @Vindicar
    RTFM!
    Метод .sort() списка сортирует список на месте, и возвращает None.
    Если нужна отсортированная копия списка без изменения оригинала, функция sorted() в помощь.
    А вообще, можно же ещё проще. Список сортируем по возрастанию? Тогда нужно убедиться что каждый следующий элемент больше предыдущего.
    def is_sorted(lst) -> bool:
      for i in range(0, len(lst)-1)
        if lst[i] > lst[i+1]: #нашли элементы в неправильном порядке
          return False #значит не отсортирован
      # если сюда дошли, то отсортирован
      return True

    Или то же самое но короче
    def is_sorted(lst) -> bool:
      return all( lst[i] <= lst[i+1] for i in range(0, len(lst)-1) )
    Ответ написан
    Комментировать
  • Почему функция срабатывает дважды?

    @o5a
    Перепроверьте еще раз свой код. В приведенном куске указанной проблемы нет: для каждой опции все будет срабатывать только 1 раз. Можете сами проверить приведенный кусок в отдельном скрипте. Если что-то повторяется, значит или этот кусок отличается от реального кода, или в остальном коде функция повторно вызывается.

    И не стоит комментировать каждую строку. Комментарии должны помогать понять логику работы куска кода, а не дублировать сам код. Нет никакого смысла в подобных комментариях:
    return bd #возвращаем получившуюся БД
    Ответ написан
    Комментировать
  • Как создать список используя введенное пользователем слово?

    @shadrin_ss
    Junior
    Думаю стоит использовать словарь

    hellp  = input(...)
    dict = {}
    dict[hellp] = []
    print(dict[hellp]) # Выведет содержание списка в данном случае пустой
    Ответ написан
    Комментировать