• Выдает ошибку Tkinter: AttributeError?

    yupiter7575
    @yupiter7575
    Python программист
    Этот говнокод упадет с ошибкой ValueError если пользователь введет строку...

    Проблема ваша в том что, вы записываете в переменную не обьект типа Entry, а None которое возвращает функция place(). Лучше сделайте это на отдельной строке
    Ответ написан
    1 комментарий
  • Правильность схемы драйвера лазерного диода?

    @pfg21
    ex-турист
    если irf в данном состоянии открывается/закрывается (влом гуглить параметры) то будет работать.
    Ответ написан
    Комментировать
  • Как с помощью электроники делать узелки из двух ниток?

    hint000
    @hint000
    у админа три руки
    Бесплатная идея для разработки: челнок с ниткой, подвешенный в управляемом магнитном поле + машинное зрение.
    Ответ написан
    Комментировать
  • Как по нажатию кнопок, сделать фильтрацию datagridview по текущей дате, неделе и месяце?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    У Грида есть свойство для фильтрации. Кроме того можно отфильтровать источник и вызвать датабинд поищите в документации на сайте Майкрософт

    Подошел к компьютеру, посмотрите вот этот пример
    https://stackoverflow.com/questions/5843537/filter...
    Там есть и фильтрация на уровне источника данных, так и в самом гриде
    Ответ написан
    3 комментария
  • Как выбрать ячейки в google sheets в которых есть запятая?

    ProgrammerForever
    @ProgrammerForever Куратор тега Google Sheets
    Учитель, автоэлектрик, программист, музыкант
    1. выбрать ячейки, в которых есть запятая

    =filter(A2:A;REGEXMATCH(A2:A;"\,"))
    2. выбрать ячейки в которых только одно слово

    =ArrayFormula(filter(A2:A;REGEXMATCH(""&A2:A;"^[0-9a-zA-Zа-я-А-ЯёЁ]+$")))

    или
    =ArrayFormula(filter(A2:A;REGEXMATCH(""&A2:A;"^\S+$")))
    Ответ написан
    Комментировать
  • Можно ли создать интерфейс в стиле минимализма на Tkinter?

    NeiroNx
    @NeiroNx
    Программист
    Можно - достаточно использовать тему.
    Например вот:
    #Set theme and style
    self.theme = ttk.Style()
    self.theme.theme_use('Arc') #Load Theme from folder .\Theme\Arc
    self.theme.configure('Red.TLabel', foreground = 'Red')

    6082c50891563186621422.png
    Кнопки далеко не похожи на стандартные.
    Ответ написан
  • Как удалить виджет label при повторном нажатии на кнопку?

    @procheloVek
    Конкретно про "local variable 'kh' referenced before assignment"
    В области видимости функции ft() не объявлена переменная ft().
    Тебе нужно передать эту переменную в функцию
    kh=0
    def ft():
        label_data = Label(root,text = 'Введенное число %s')
        label_data.pack()
        if kh == 1:
            kh = 0
            label_data.destroy()
        else:
            kh += 1
    ft(kh)
    Ответ написан
    Комментировать
  • Какое устройство использовать для замыкания контактов на плате управления откатными воротами через WiFi?

    @NIKA_R
    Простите, может я ошибаюсь, но зачем вам Raspberry Pi + WiFi-свисток ?
    Насколько я знаю, существует уже готовый модуль управления воротами по Wi-Fi DOORHAN SMARTCONTROL-2. https://doorhan.ru/spravka/data-test.php?data=Smar...
    6080188332308539629901.jpeg

    Инструкция...
    https://doorhan-moscow.com/upload/iblock/995/Smart...
    Ответ написан
    Комментировать
  • Как сделать заполнитель текста в text python tkitner?

    yupiter7575
    @yupiter7575
    Python программист
    Я так понял у вас гугл сломался? нашел на первой ссылке
    Ответ написан
    Комментировать
  • Почему новая оперативная память не работает в ноутбуке?

    Slayer_nn
    @Slayer_nn
    Гугол, памаги!
    ddr3 не имеет совместимости с ddr3L
    Только наоборот

    Плашку на обмен. Я бы вернул, ибо старье
    И купил в другом магазе
    Тебе нужна ddr3L или PC3L
    Ответ написан
    3 комментария
  • Как определить тип VT1?

    @nehrung
    Не забывайте кликать кнопку "Отметить решением"!
    пропущен тип VT1... Какой там должен быть?
    Да почти любой PNP малой мощности с коэфф. усиления по току 100...300. Но поскольку он стоит на входе, то весьма желательно, чтобы он был т.н. "малошумящий". Малошумящий - это такой, в даташите которого специально написано, что он малошумящий. Или, если там ничего на этот счёт не написано, то должен быть указан коэфф. шума, и его величина должна быть невелика в сравнении с подобными.
    И правда ли что эта схема способна выдавать 10 ватт, работая от 9в?
    Это нетрудно прикинуть на глазок. При питании от 9 вольт размах выходной синусоиды вряд ли может превысить 7 вольт (если без клиппирования). Значит, амплитуда 3,5, а эфф. значение примерно 2,5 вольт. Ваши требуемые 10 ватт делим на 2,5 вольт, получаем ток 4 ампера. Если 2,5 вольт поделить на 4 ампера, то по закону Ома сопротивление нагрузки должно быть 0, 625 ом - чуть больше полуома.
    Если найдёте громкоговоритель с таким сопротивлением, то 10 ватт сможете получить.
    Обратите внимание - никаких параметров конкретно вашей схемы я при этой прикидке не использовал. Значит, то же самое будет касаться любой другой схемы, которую вы захотите питать от 9 вольт. Кроме усилителей класса D (импульсных).
    Долго ли она будет работать от батарей 3x16850 по 3500mah?
    Три элемента, надо полагать, соединены последовательно - иначе напряжение 9 вольт не получить. Значит, требуемый ток 4 ампера должен давать любой из этих элементов. Ёмкость 3500 мач - это значит, что 3,5 ампера такой элемент в идеале способен отдавать в течение одного часа. Но у нас, во-первых, ток больше 3,5, и во-вторых, аккумуляторы не идеальные. Ну, минут 30...40 такой ток они вам дадут. Вряд ли дольше.
    Ответ написан
    9 комментариев
  • Как прочитать этот момент схемы Э4?

    Ocelot
    @Ocelot
    Прямоугольник - гермоввод (ГОСТ 2.702-2011).
    Пунктирный круг - экранированный кабель (ГОСТ 2.721-74).
    Ответ написан
    5 комментариев
  • Как в одночасье перестать любить и заниматься электроникой?

    @lonelymyp
    Хочу вылезти из минуса по карме.
    В 67 уже пора перестать быть тряпкой. Будь мужиком и поступай как хочешь.
    Ответ написан
    Комментировать
  • Как отслеживается подключение монитора VGA?

    @erkade
    Добавить ещё два 75 Ом резистора на Vsync и Hsync.

    Если же материнка проверяет EDID, то придётся повесить на контакты разъёма микросхему 24С02 c EDID. См.
    распиновку разъёма VGA.
    6060a3f228c30971485009.png

    Эту микросхему можно найти на майн-платах неисправных мониторов/телевизоров имеющих порт VGA, микросхема должна относится именно к VGA порту.
    Или записать в 24С02 программатором любой EDID для VGA монитора, напр.
    hex
    00FFFFFFFFFFFF00410C3AD040E20100
    101101030E1E1778EAB4A5A1584E9726
    165054BFEE0001010101010101010101
    01010101010164190040410026301888
    360030E410000018000000FF00545933
    30373039313233343536000000FC0050
    484C20313550464C34313232000000FD
    00384C1E3F08000A20202020202000E3

    Вместо программатора можно обойтись VGA/HDMI/DVI разъёмом и ОС Linux c программами i2c-tools, но не все видеокарты поддерживают запись i2c.
    Ответ написан
    2 комментария
  • Как подключить микроконтроллер к программатору USBASP?

    ProgrammerForever
    @ProgrammerForever
    Учитель, автоэлектрик, программист, музыкант
    ATTINY13 --> USBASP
    1 - Reset --> RST - 5
    4 - GND --> GND - 8, 10
    5 - MOSI --> MOSI  - 1
    6 - MISO --> MISO - 9
    7 - CLK --> CLK  - 7
    8 - VCC --> +5  - 2
    Ответ написан
    Комментировать
  • Что за конструкция (, ) используется в операторе if javascript?

    delphinpro
    @delphinpro Куратор тега JavaScript
    frontend developer
    Гугл ничего про это не выдаёт (

    попробуйте Яндекс
    https://yandex.ru/search/?text=javascript%20операт...
    Ответ написан
    4 комментария
  • Как найти сумму отрицательных элементов в массиве?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Ответ написан
    Комментировать
  • Как решить данную олимпиадную задачу?

    wataru
    @wataru Куратор тега Алгоритмы
    Разработчик на С++, экс-олимпиадник.
    Это задача на придумывание паттерна и доказывание его. Тут надо рисовать всякие случаи на бумажке и обобщать.

    Во-первых, когда встает вопрос о можно-нельзя ли какими-то операциями получить что-то, первая мысль должна быть - придумать инвариант. Какое-то свойство, которое не меняется при применении операции. С опытом наберетесь идей для инвариантов. Тут сразу приходит в голову такой: Обозначим цвета цифрами от 0 до 2. Тогда при любом перекрашивании сумма всех чисел по модулю 3 не меняется. Если столбы одинаковые - сами числа не меняются, если 01 перекрасить в 22, 02 в 11 и 12 в 00, то сумма остается с таким же остатком от деления на 3.

    Отсюда можно сразу сделать вывод, что при N делящемся на 3 ответа нет. Потому что в конце мы должны получить все цвета одинаковые, а значит сумма будет 0, N или 2N - делится на N. Раз N делится на 3, то и итоговая сумма дает остаток 0 (по модулю 3). Но изначальная раскраска может иметь любой остаток (например, 00..0001). Значит решения для таких N нет.

    Далее, можно легко придумать, как "удваивать" решение. Пусть мы умеем получать какой-то N, то можно получить алгоритм для 2N. Сначала перекрашиваем первую половину по известному плану. Потом вторую половину. Потом попарно столбы из двух половин. Надеюсь, очевидно, почему это работает?

    Так можно получить ответ для 2,4,8,16, но этого мало.

    Следующая мысль, как можно построить универсальный план покраски - это воспользоваться тем, что если мы сделаем все столбы одинаковыми, то все последующие действия ничего не испортят. Т.е. можно взять конкретную раскраску столбов, составить план для нее. Потом взять следующий вариант входных данных, прогнать его через уже составленный план. Если результат не одноцветный - дополнить план так чтобы раскрасить все в один цвет и для этого варианта изначальной раскраски. Повторить со всеми возможными входными данными. Использовать эту идею для всех вариантов N раскрасок слишком медленно (их же 3^N). Вернемся к ней попозже.

    Следующая идея должна быть - раз для существования решения важно неделимость на 3, то возможно мы сможем к группе одинаковых столбов добавить 3 столба?

    После разбора нескольких случаев на бумаге я понял, что надо отдельно рассматривать случаи N%3=1 и N%3=2.

    Рассмотрим первый случай. У нас есть 3k столбов цвета А, и в конце еще 4 столба - AXYC (один из N и 3 новых). Задача - получить в конце 4 одинаковых цвета. У нас уже есть решение для N=4 в примере. Просто примените его к 4-м последним столбцам. Теперь у нас есть ...AAAZZZZ. Если A=Z, то все наши операции ничего не сделают. Рассмотрим только случай A!=Z. Красим A+Z, получаем AAYYZ..Z на конце Красим 2 раза A+Y. Т.е. за 3 операции мы перекрасили 3 последние A в Z. Повторяем операцию, пока все A не перекрасим (их же 3k, напоминаю).

    Теперь случай N=3k+2. У нас есть 3k A, и в конце AAXYC. Если у вас есть решение для 5, то получаете на конце 5 Z и аналогично предыдущему случаю перекрашиваете 3 последних A в цвет последних столбов.

    Т.е. отдельно рассматриваете случай разных остатков N%3. Потом решаете задачу для N=4 или 5 первых столбцов, потом добавляете по 3 столба: решаете задачу для 4/5 последних столбов и итеративно перекрашиваете по 3 столба из предыдущих.

    Это решение потребует максимум N/3*(F(5)+N) шагов, где F(5) - сколько нужно операций для решения N=5.

    Теперь решение для N=5. Тут и надо будет воспользоваться наблюдением о дополнении плана для разных входных данных. Вот есть 5 столбов. Покрасим 1+2 и 3+4. Теперь у нас есть AABBC. Возможно какие-то цвета одинаковые. Но сначала допустим, что они все три разные. Красим попарно A+B(1+3 и 2+4). Все. Но что, если B=C, B!=A? У нас было AABBB. Мы покрасили 1+3 и 2+4 - получили ССССA. Красим 4+5 - CCCBB. Теперь, как раньше, перекрасим 3С в B: 3+4 (CCAAB), 1+3(BCBAB), 2+4 (BBBBB).
    Теперь надо рассмотреть случай B=A, C!=A: AAAAC. Надо аккуратно повторить все операции выше - получим BBBBB. План для этого случая работает, ничего дописывать не надо. Остался случай A=C, C!=B. Т.е. дано AABBA. Применяем шаги выше и получим (перепроверьте!) AAAAA.

    Т.е весь план для N=5 1+2, 3+4, 1+3, 2+4, 4+5, 3+4, 1+3, 2+4.

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

    Его можно соптимизировать по количеству операций. В начале я привел простой вариант удвоения. который быстро получает план для степеней двойки. Ниже я привел как имея 2 группы одноцветных столбов, если одна группа состоит из троек, перекрасить все в один цвет. Воспользуемся этими двумя приемами.

    Возьмите максимальную степень двойки, помещающуюся в N. Пусть это k (2k > N, k <= N). Примените план для первых k. потом для последних k. Итого вы получите N-k столбов одного цвета и k столбов (возможно) другого цвета в конце. Если N-k делиться на 3 то, по известному плану "перекрашивания по тройкам" перекрасьте первые N-k в цвет последних k. Если же N-k не делиться на 3, то покрасьте попарно столбы цвета первых N-k и цвета вторых N-k. Потом останутся какие-то столбы в конце другого цвета, но их количество точно будет делиться на 3 (доказательство этого факта придумайте сами. Рассмотрите какие могут быть остатки от деления на 3 у k и N-k). Раз у нас группа другого цвета состоящая из троек, то мы умеем ее перекрашивать.

    Этот вариант будет требовать не квадратичное, а O(n log n) количество операций.
    Ответ написан
    Комментировать
  • Python, tkinter, canvas. Как получить id объекта по щелчку мыши на нём?

    @atereffigies Автор вопроса
    Всё, я нашел, это метод find_closest.
    Ответ написан
    Комментировать