True ошибка в коде false 3

antonsamsung776

+10

Решено

2 года назад

Информатика

5 — 9 классы

6. Дан программный код. Определи результат.
Python
1 a = 2
2 b = 3
print(a — b)
2 = 3
True
Ошибка в коде
False
пжпжпжпжпжпжжпжпжпжпжпжпжпжпжпжпжпжпжжп

Смотреть ответ

Ответ

3
(2 оценки)

3

abai27100
2 года назад

Светило науки — 420 ответов — 0 раз оказано помощи

=2-3

Вот ответ удачи……..

(2 оценки)

Остались вопросы?

Задай вопрос

Найди нужный

Новые вопросы по предмету Математика

На python.сделать из реальной жизни пример словаря где значение по ключу будет являться коретежем и сделать логику на 10+ строк по работе с э …

помогите пожалуйста ​

Идея для проекта Python Подкиньте идей для программы, проекта на языке программирования Python. Нужно что-то не очень сложное, актуальное, не б …

сделать из реальной жизни пример словаря где значение по ключу будет являться кортежем и сделать логику на 10+ строк по работе с этим словарё …

помогите пожалуйста информатику программирование пайтон​

Ответ:

ошибка в коде.

Объяснение:

правильно: print(a == b) | False


Аноним:
В 5 не ошибка в коде

merkkaa:
давайте без оскорблений. В задание которые мне предоставили, ошибка в коде. Вы не сможете в принте переназначить переменную. Так что если опечатка и в задание и вправду было сравнение, то это уже не моя проблема, я ответил на поставленный вопрос.

kirsanov409:
во первых задание которое дали это 4 вопрос в билимленде во вторых на поставленый ему вопрос он ответил правильно, а то что ты зашёл не на тот вопрос твои проблемы

sonj7575:
в пятом задании ответ —> 2 ❤<3

Аноним:
Я EБAЛ ТВОЙ РОТ CYКА ТЫ БЕЗ МАТЕРИ, ТВОЙ БАТЯ СДОХ В КАНАВЕ, А МАТЬ ДО СМЕРТИ TPAXAЛ

ayssa:
frehgeyhim, то что ты умственно отсталый не значит что ты можешь разбрасываться такими словами .

AbdulMalik20:
Alyssa,ты понимаешь из-за него кже минус балл

alinamalima2007:
5 вопрос , правильный ответ -5

AliNurman:
@alinamalima2007 какой атвет

Привет! Меня зовут Маша, я уже шесть лет занимаюсь коммерческой разработкой на Python, а ещё пишу задачи и объясняю теорию для студентов курса «Мидл Python-разработчик» от Яндекс. Практикума. По опыту знаю, что начинающий разработчик чаще всего хорошо знает синтаксис языка, но не до конца разбирается с тем, что у Python «под капотом».

В результате программист-джуниор допускает неочевидные ошибки: на первый взгляд, его код написан идеально, но почему-то работает некорректно. Защититься от таких недоразумений поможет только знание нюансов внутренней работы Python. Поэтому сегодня я рассмотрю типичные проблемы, с которыми сталкиваются новички, и предложу несколько вариантов их решения.

1. Полагаетесь на изменяемые типы в значениях по умолчанию

У Python есть прекрасная особенность, а именно возможность задавать значения по умолчанию. Вы можете написать так:

И вам не придётся каждый раз указывать степень, в которую вы хотите возвести число (пока эта степень – 2), или уточнять количество ног у вашего кота.

Такое поведение бывает сложно поймать: если вы создали всего один экземпляр объекта, то, скорее всего, не заметите проблему. Но столкнётесь с ней позже.

Как решить проблему? Привыкайте вместо значений по умолчанию указывать None :

Тогда код будет работать корректно, и все коты останутся на своих местах!

2. Вызываете функцию в значении по умолчанию

Продолжаем разбираться с магией значений по умолчанию, а точнее – с вызовом функции. Представьте себе, что вы установили дома умную камеру и настроили её так, чтобы она записывала действия всех, кто появляется в её поле зрения, в текстовый файл. Ваша функция будет выглядеть так:

После этого вы, спокойные и довольные собой, ушли на работу.

В чём подвох? Вернувшись домой, вы решили проверить, как записалось каждое событие, посмотреть актуальные даты и описания. Ожидание:

Реальность – все события как будто произошли в одно и то же время:

Как её решить? Чтобы время вычислялось каждый раз при вызове вашей функции, нужно перенести вычисления в тело функции:

Так вы всё-таки узнаете, во сколько Том и Адорианец пили кофе и когда агент Кей ворвался к вам домой со своим нейралайзером.

3. Используете одновременно int и bool как ключи dict

Предположим, вы решили написать простой переводчик с компьютерного языка на человеческий для своего умного дома. Вам нужно, чтобы True отображалось как «Правда», False – как «Ложь», а 1 и 0 переводились как «Есть» и «Нет». Зафиксируем все переводы в словаре:

В чём подвох? В этом словаре используется четыре разных ключа. Проверим, действительно ли всё работает корректно:

Кажется, что-то пошло не так. Давайте заглянем в сам словарь:

Из него пропали два варианта перевода, а те, что остались – неверные.

Чем объясняется проблема? Чтобы разобраться в произошедшем, нужно понимать две вещи: что такое класс bool и как работает словарь.

Hash-функции ключей перестанут совпадать, и ответ словаря будет таким, как мы хотели, – общий язык с умным домом всё-таки будет найден:

4. Используете set для ускорения вычислений

В чём подвох? Рассмотрим конструкцию с точки зрения интерпретатора:

Чтобы найти нужный элемент, интерпретатор последовательно идёт по ссылкам, начиная с первой, и сравнивает объект с искомым: найдя нужные данные, он останавливает поиск. Чем длиннее список, тем больше времени занимает процесс. В O-нотации это записывается как O(n).

O-нотация называет такую сложность O(1): вне зависимости от размеров множества поиск будет происходить за одинаковое количество времени.

Как решить проблему? Звучит банально, но правильнее было бы не мудрить и воспользоваться обычным поиском.

Как говорится в дзене Python, «простое лучше сложного».

Советы для новичков в Python

Пожалуй, самый главный совет, который стоит дать специалистам-джуниорам, только начинающим свою карьеру в Python, – это не только зубрить основы, но и заглядывать внутрь инструмента, которым вы пользуетесь.

Чтобы не оказаться тем самым новичком, у которого ничего не работает, я советую:

Источники:

https://proglib. io/p/4-oshibki-v-kode-na-python-kotorye-vydayut-v-vas-novichka-2020-09-24

Python Traceback — Как правильно исправлять ошибки в коде

Traceback в Python 3

Python выводит трассировку (далее traceback), когда в вашем коде появляется ошибка. Вывод traceback может быть немного пугающим, если вы видите его впервые, или не понимаете, чего от вас хотят. Однако traceback Python содержит много информации, которая может помочь вам определить и исправить причину, из-за которой в вашем коде возникла ошибка.

Содержание статьи

Понимание того, какую информацию предоставляет traceback Python является основополагающим критерием того, как стать лучшим Python программистом.

К концу данной статьи вы сможете:

Python Traceback — Как правильно читать трассировку?

Traceback (трассировка) — это отчет, который содержит вызовы выполненных функций в вашем коде в определенный момент.

Есть вопросы по Python?

На нашем форуме вы можете задать любой вопрос и получить ответ от всего нашего сообщества!

Telegram Чат & Канал

Вступите в наш дружный чат по Python и начните общение с единомышленниками! Станьте частью большого сообщества!

Паблик VK

Одно из самых больших сообществ по Python в социальной сети ВК. Видео уроки и книги для вас!

Traceback называют по разному, иногда они упоминаются как трассировка стэка, обратная трассировка, и так далее. В Python используется определение “трассировка”.

Когда ваша программа выдает ошибку, Python выводит текущую трассировку, чтобы подсказать вам, что именно пошло не так. Ниже вы увидите пример, демонстрирующий данную ситуацию:

Обратите внимание: в данной статье подразумевается, что вы уже имеете представление об ошибках Python. Если это вам не знакомо, или вы хотите освежить память, можете ознакомиться с нашей статьей: Обработка ошибок в Python

Когда вы запускаете эту программу, вы получите следующую трассировку:

Эта выдача из traceback содержит массу информации, которая вам понадобится для определения проблемы. Последняя строка трассировки говорит нам, какой тип ошибки возник, а также дополнительная релевантная информация об ошибке. Предыдущие строки из traceback указывают на код, из-за которого возникла ошибка.

Python Traceback — Как правильно понять в чем ошибка?

Трассировка Python содержит массу полезной информации, когда вам нужно определить причину ошибки, возникшей в вашем коде. В данном разделе, мы рассмотрим различные виды traceback, чтобы понять ключевые отличия информации, содержащейся в traceback.

Подробный обзор структуры трассировки в Python 3

Существует несколько секций для каждой трассировки Python, которые являются крайне важными. Диаграмма ниже описывает несколько частей:

Обзор трассировки Python

В Python лучше всего читать трассировку снизу вверх.

Есть ряд отличий между выдачей трассировок, когда вы запускает код в командной строке, и между запуском кода в REPL. Ниже вы можете видеть тот же код из предыдущего раздела, запущенного в REPL и итоговой выдачей трассировки:

Источники:

https://python-scripts. com/python-traceback

С условиями стоит поработать. Во-первых, в условии задачи чётко не определено — значения в массивах обязательно возрастают или убывают, или могут произвольно меняться как в сторону увеличения, так и в сторону уменьшения.

Во втором случае нужно пройтись в цикле и убедиться, что значения меняются в одну сторону на всей протяжённости. Поскольку это не оговорено, будем использовать упрощённый вариант.

Так же чётко не задано условие двойного возрастания. Из кода предположу, что это когда каждое последующее число другое.

В профессии программиста это важно: 1. запросить все условия. 2. не делать больше чем просят.

Проверку

 if (vvod == null && vvod.length == 0) {
        Otvet = false;
    } else if (vvod.length == 1){
        Otvet = true;
    }

Надо перенести в начало метода в таком виде:

    if (vvod == null || vvod.length == 0) {
        return false;
    } else if (vvod.length == 1){
        return true;
    }

Условие здесь стоит поправить. Сейчас вторая проверка свалится с NullPounterException. Если перевести это условие на русский язык: «если ввод равен налл, и его длина равна нулю».

if (vvod == null && vvod.length == 0) {

Правильное решение:

if (vvod == null || vvod.length == 0) {

«если ввод равен налл, или его длина равна нулю». В случае, если первое условие == true — второе проверяться уже не будет.

Циклы.

Тут всё плохо. Один лишний цикл, ненужные проверки, ненужная переменная. Дешевле переписать код:

    public static boolean end(int[] vvod, boolean toschka) {

        // (vvod == null || vvod.length == 0), End = false;
        // vvod.length == 1, End = true;
        if (vvod == null || vvod.length == 0) {
            return false;
        } else if (vvod.length == 1) {
            return true;
        }

        // смотрим, есть у нас двойное изменение или нет.
        boolean doubleIncr = true;

        for (int i = 0; i < vvod.length - 1; i++) {
            if (vvod[i] == vvod[i + 1]) {
                doubleIncr = false;
                break;
            }
        }

        //если монотонное - возвращаем false
        if (!doubleIncr) {
            return false;
        }

        // Если первый элемент массива меньше последнего - значит возрастает
        boolean increase = vvod[0] < vvod[vvod.length - 1];

        // if toschka == true && vvod == резко возрастает, End = true;
        //if toshka == false && vvod == резко падает, End = true;
        if ((toschka && increase) || (!toschka && !increase)) {
            return true;
        } else {
            return false;
        }

        // кстати, последние проверки можно упростить до:
        // return (toschka && increase) || (!toschka && !increase);
    }

Тесты для проверки:

    @Test
    void endTest() {
        assertFalse(end(new int[]{}, false));
        assertFalse(end(new int[]{}, true));
        assertTrue(end(new int[]{0}, false));
        assertTrue(end(new int[]{0}, true));

        assertFalse(end(new int[]{1,2}, false));
        assertTrue(end(new int[]{2,1}, false));
        assertTrue(end(new int[]{1,2}, true));
        assertFalse(end(new int[]{2,1}, true));

        assertFalse(end(new int[]{1,2,2}, false));
        assertFalse(end(new int[]{2,1,1}, true));
        assertFalse(end(new int[]{1,2,2}, false));
        assertFalse(end(new int[]{2,1,1}, true));
    }

Так же советую называть переменные и методы с маленькой буквы.

Понравилась статья? Поделить с друзьями:
  • Trove ошибка failed to connect to auth server
  • Trove blade of the celestial empress произошла ошибка
  • Trouver solo 10 ошибка e6
  • Trouver power 11 ошибка e6
  • Tropico 3 код ошибки 53