Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
16 / 14 / 4
Регистрация: 05.06.2019
Сообщений: 79

Работа со списками. True и False

24.08.2020, 13:01. Показов 3402. Ответов 7

Студворк — интернет-сервис помощи студентам
Нужно проверить элементы массива. Если при сложении элемента с переменной ex_candy значение больше наибольшего элемента массива(или равно ему), то записать как True. Иначе False
При elem = 1 код ведет странно. False присваевается к первому элементу, единицу пропускает. Цикл продолжается на следующей итерации. Так только с 1. При других значениях переменой и элементами массива проблем нет.
Саму задачу решил, немного переписав код, но хотелось бы узнать в чем проблема здесь?

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
can = [2, 3, 5, 1, 3]
 
 
ex_candy = 3
great = 0
 
for i in can:
    if i > great:
        great = i
 
for elem in can:
    ind = can.index(elem)
    if elem + ex_candy >= great:
        can[ind] = True
    else:
        can[ind] = False
 
print(can)
Изображения
 
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.08.2020, 13:01
Ответы с готовыми решениями:

Меняется значение элемента с true на false, но не отрабатывается смена :disabled=true на :disabled=false
<button type="button" @click="buttonsClick(0)" :disabled="switcher" class="btn btn-dark">Первая кнопка</button> <button...

Нужно записать формулу в С++ not(pred(t) = false) or (ord(f) <> 1),при t=true,f=false
Нужно записать формулу в С++ not(pred(t) = false) or (ord(f) &lt;&gt; 1),при t=true,f=false Подробнее,пожалуйста

TRUE соответствует «орел», а FALSE — «решка». Составить пять выражений, выдающих TRUE для следующих случаев
В переменные M1, M2 и M3 вводится итог подбрасывания трех монет так, что TRUE соответствует «орел», а FALSE — «решка». Надо составить...

7
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,667
Записей в блоге: 29
24.08.2020, 13:08
user1472382, что говорит отладчик?
использовать функцию max() нельзя?

Добавлено через 1 минуту
Python
1
2
3
4
>>> can = [2, 3, 5, 1, 3]
>>> ex_candy = 3
>>> [e>= max(can)-ex_candy for e in can]
[True, True, True, False, True]
1
16 / 14 / 4
Регистрация: 05.06.2019
Сообщений: 79
24.08.2020, 13:12  [ТС]
Для меня отладка, пока, как темный лес. Поэтому написал сюда)
Про функцию max() не слышал (учу по книге Лутца, попутно решая задачи), спасибо
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,667
Записей в блоге: 29
24.08.2020, 13:16
Цитата Сообщение от user1472382 Посмотреть сообщение
Поэтому написал сюда)
я и не говорю, что сюда не нужно писать, просто на всякий случай спросил. Отладчик обязательно надо освоить. То, что Лутца читаешь -хорошо
0
16 / 14 / 4
Регистрация: 05.06.2019
Сообщений: 79
24.08.2020, 13:19  [ТС]
Welemir1, еще раз спасибо (хороший код, возьму на заметку), но задачу я решил.
Вопрос, почему пропускается единица, при чем только единица, остается открытым. С точки зрения логики все верно.
Если обращаться на прямую к индексу, то код выполняется верно

Python
1
2
3
4
5
6
 
for elem in range(len(can)):
            if candies[elem] + ex_can >= great:
                can[elem] = True
            else:
                can[elem] = False
Если есть ошибка в коде, можете пнуть. Но мне интересно
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,667
Записей в блоге: 29
24.08.2020, 13:27
Лучший ответ Сообщение было отмечено user1472382 как решение

Решение

Цитата Сообщение от user1472382 Посмотреть сообщение
Если есть ошибка в коде, можете пнуть. Но мне интересно
это не ошибка, неверный подход к решению)
дело в том что True и False - булины, а они в питоне наследники класса int, то есть это целые числа 1 и 0 соответственно. А дальше сам прикинь как будет работать твое условие когда 1 и вот это
ind = can.index(elem) # True это тоже 1

Python
1
2
3
4
5
6
7
8
9
10
>>> True==1
True
>>> True==0
False
>>> False==0
True
>>> [True,False].index(1)
0
>>> [True,False].index(0)
1
Добавлено через 51 секунду
то что пытаешься копать до причины -хорошо
1
16 / 14 / 4
Регистрация: 05.06.2019
Сообщений: 79
24.08.2020, 13:35  [ТС]
Welemir1, то есть при elem = 1 строка
Code
1
ind = can.index(elem)
ищет в массиве первый элемент с значением 1 и находит True(который равный = 1)?
Никогда бы не догадался. Еще раз, огромное спасибо
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,667
Записей в блоге: 29
24.08.2020, 13:53
Цитата Сообщение от user1472382 Посмотреть сообщение
Никогда бы не догадался.
догадался бы, дочитав Лутца , он всем ум в порядок приводит.

Добавлено через 30 секунд
вот тебе по отладчику https://youtu.be/h65olkZRs2A
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.08.2020, 13:53
Помогаю со студенческими работами здесь

define true false; AllowNoPassword=true
Добрый день! Разворачиваю новую рабочую площадку на новом компе. Установил LAMP - все заработало. Установил PhpMyAdmin с репа -...

на кнопку кликаешь, Image1.Visible:=False; Image2.Visible:=True; Eще раз ликаешь, Image1.Visible:=True; Image2.Visible:=False.
на кнопку кликаешь, Image1.Visible:=False; Image2.Visible:=True; Eще раз ликаешь, Image1.Visible:=True; Image2.Visible:=False. ...

Сколько шагов редукции при нормальной стратегии требуется для преобразования OR TRUE FALSE к нормальной форме TRUE
Пусть FALSE≡λx.λy.y,TRUE≡λx.λy.x и OR≡λx.λy.(xTRUE)y. Сколько шагов редукции при нормальной стратегии требуется для преобразования OR TRUE...

Глюк false = true == true;
Возник глюк, пишу: result.isPlus = this-&gt;isPlus == numberBigSize.isPlus; Поля &quot;this-&gt;isPlus&quot; и &quot;numberBigSize.isPlus&quot; равны...

define('true',false,true);
Слушаю видео, там затрагивает вопрос констант в ПХП, автор говорит что если вы хотите человека довести до сумасшествия, объявите так. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru