• Какими способами можно удалить значения из словаря до определенного?

    adugin
    @adugin Куратор тега Python
    Универсальный подход, который годится для любых типов ключей:
    from itertools import dropwhile
    
    key = '5'
    state = {1: 'a', 'abc': 'b', 3.14:'c', None: 'v', '5': 'b', '6': 'n', '7': 'm'}
    
    new_state = dict(dropwhile(lambda item: item[0] != key, state.items()))

    Или так:
    for k in state.copy():
        if k != key:
            del state[k]
        else:
            break
    Ответ написан
    Комментировать
  • Как не утонуть в океане информации?

    @timfactory
    1. для организации и систематизации давно использую mindmaps (FreeMind, XMind, Mindjet) - при навыке, позволяет огромное количество информации разгрести и структурировать. Читать документацию и тех.литературу, одновременно с составлением mindmap - это очень полезно.

    2. после того, как понял, что эмоционально прилипаю к хабру/LOR/вконтактику в поисках новостей - поставил TT-RSS на локальном сервере и перетащил все источники информации туда - через какое-то время, освободилось внимание, т.к. пропала масса чисто эмоционального/маркетингового/политического мусора, который обычно сопровождает полезную информацию при "лобовом" поиске. Ещё есть готовые решения, типа Feedly и т.п.

    3. после того, как надоело делать бесконечные TODO где попало, поставил Redmine на локальном сервере - даже для проектов не касающихся IT. Ещё есть Trac.

    4. когда понял, что, во всех браузерах, количество закладок зашкаливает, при полной невозможности найти нужную информацию, поставил SemanticScuttle на локальный сервер (ещё есть готовые GoogleBookmarks, Evernote и т.п.) и продумал тэги, а после разгребания закладок, появилась привычка минуту подумать над тэгами и положить закладку на своё место сразу-же.
    Ответ написан
    2 комментария
  • Как не утонуть в океане информации?

    Bandicoot
    @Bandicoot
    Вась-программист
    Я поступаю гораздо проще - поглощаю новую информацию только при решении конкретных задач. Нет запланированных задач - нет новой информации. И никакой каши в голове
    Ответ написан
    Комментировать
  • Как не утонуть в океане информации?

    sabramovskikh
    @sabramovskikh
    Я читаю либо сразу, либо никогда. Если я думаю отложить статью на потом, то значит это мне не надо, т.к. тоже не прочту этого.
    Могу предложить собирать статьи в течении дня, вечером брать 30-60 минут на прочтение. там уже сообразишь что стоит читать из отложенного, а что нет
    Ответ написан
    4 комментария
  • Как не утонуть в океане информации?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    0. На хабре мир не замкнулся так же, как и на вконтакте)
    1. Когда "наткнулись" при "рабочем" поиске (когда делаете работу по текущему проекту) на интересную информацию - кладите статью (+линк) в папку рядом с проектом, применительно к которому Вы на нее набрели или отталкиваясь от темы статьи (рядом с другим проектом).
    2. По тематически-узконаправленному ("лучевому") поиску - вы найдете не более 5 статей. Это первоисточники и образовательные (примеры, производительность и т.д.) Все другие - "адский trash" и плагиат.
    3. Не ищите "от нечего делать": время потратите - толку 0.
    4. Используйте всю мощь поисковой строки гугла (символы управления приоритетами и т.д.) для отсеивания "мусорных" ссылок.
    5. На любую тему обсуждений - есть только 1 ресурс-лидер, который цитируют во всем интернете. Интересна тема - станьте участником такого сообщества и получайте уведомления по почте.
    6. Сначала планируете цель, затем идёте "в лес по грибы" за информацией. Если наоборот - всё...: Вас "засосёт" чёрная дыра технологий и читать Вы будете ВЕЧНО!!!
    7. Главное правило: статья должна прочитываться сразу или "привязываться" к вашей цели и отправляться в папку (см. п.1)
    И помните:
    тостер - для отдыха
    гугл - для работы

    UPD: Как правильно искать информацию
    Ответ написан
    14 комментариев
  • Вызов C++ функций в python?

    Virion_GD
    @Virion_GD
    В стандартной библиотеке python есть библиотека ctypes, она как раз для этого и написанна. Вот здесь можно примеры просмотреть.
    Ответ написан
    Комментировать
  • Где лучше учить Python самостоятельно?

    @Andrei1penguin1
    Если хочешь учить питон 2 года до уровня новичка, пожалуйста, делай как говорят, читай книжки и делай все по линеечке
    Если тебе нужен успех в этом деле, твои действия следующие:
    Поставил цель, проект, и начал выполнять
    Все, что не знаешь—гуглишь
    И так постепенно ставишь все более и более сложные проекты
    Во-первых опыт, во-вторых портфолио, а в-третьих куски кода из предыдущих проектов сможешь использовать в дальнейшем
    Ответ написан
  • Полноценное обучение Frontend?

    @Andrei1penguin1
    Запомни, лучшее обучение—практика
    Берешь, ставишь себе цель—проект, а дальше пишешь
    Все, что не знаешь—гуглишь
    Ответ написан
    Комментировать
  • Как пересобрать python на mingw?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    потому что сам python собран на другом компиляторе
    нет.
    Возможно не совпадает разрядность gcc и python(x32,x64).
    Ваш пример успешно собрался у меня, правда на версии python 3.4.
    Вместо MinGW использую TDM-GCC 9.2.0 x32
    5ff7178634d56649146639.png
    Ответ написан
    3 комментария
  • Отслеживание исключений в asyncio?

    @Lepilov Автор вопроса
    Возможно кому то пригодиться решение
    task_list = [task1(), task2()]
    res = await asyncio.gather(*task_list, return_exceptions=True)  # res = ["result", ArithmeticError()]
    res = list(map(lambda r: r if not isinstance(r, Exception) else default_value, res))  # res = ["result", None]
    Ответ написан
    Комментировать
  • Яндекс.практикум Python Урок16. почему не пропускает задачу?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Для чего?
    index =(friends[3])

    Вот есть у вас переменная friends, содержащая в себе список имен.
    У каждого имени есть свой индекс в списке, начиная с нуля
    5ff37b58d0473791774955.jpeg
    Все, что вам нужно сделать - это получить нужный элемент из списка friends, использовав индекс.

    Вам нужна Алина, ее индекс - 3. Индекс - это просто число, не нужно усложнять, добавляя разные скобки и прочее.
    Все, что вам нужно сделать - это
    index = 3
    Ответ написан
    4 комментария
  • Какой язык программирования и технологии выбрать для написания программы советника?

    @alexalexes
    Фронтенд составляющая проекта:
    1-3 требования вам выполнит сверстанная на коленке html-форма с элементами логики на JavaScript, даже без vue.
    5 требование - в общем, это любой браузер.
    Бэкенд составляющая проекта:
    4 требование - можно использовать нетребовательные к квалификации разработчика MySQL базу данных и PHP сервер для реализации простейшей логики обращения к этой базе.
    Ответ написан
    1 комментарий
  • Какую платформу выбрать для десктопного приложения с учетом поддержки win XP,7,8,10?

    Adamos
    @Adamos
    Попробуйте все-таки выкинуть из голов древние представления о том, как все это нужно делать, и рассмотреть вариант онлайн-сервиса. Да, для этого придется начать работать немножко по-другому, но это также позволит делать вещи, которые нынешняя организация работы делает невозможными.
    А уж написать систему учета на веб-технологиях сейчас может любой фрилансер за копейки.
    Ответ написан
    2 комментария
  • Хочу добавить в бд значение но выдает ошибку почему?

    @malving
    Нужно отправлять кортеж т.е
    INSERT INTO users_id (user_id) VALUES (?), (user_id,)
    Ответ написан
    Комментировать
  • Почему страница в браузере грузится быстрее когда он развернут?

    kshnkvn
    @kshnkvn
    yay ✌️ t.me/kshnkvn
    1. Запускать его в headless режиме, что-бы окно всегда было "активным". При сворачивании приложение переходит в фоновый режим.
    2. https://chromium.googlesource.com/chromium/src/+/m...
    Ответ написан
    2 комментария
  • Свой вебинтерфейс: как сделать последовательную цепочку экранов редактирования?

    @AstraVlad
    Финансист, консультант, программист-любитель
    Интересная задачка. А нельзя просто провалить валидацию формы и вернуть юзера обратно?

    Если нет, то самый тупой вариант это засунуть данные прямо в параметры URL при редиректе. А вот самый хитровыпуклый и универсальный что я могу придумать это держать что-то вроде Redis в качестве кэша, кидать туда данные и передавать в URL id записи. Оба способа будут работать при любой архитектуре системы и не зависят ни от языка, ни от фреймворка.

    А так, Django поддерживает сессии и вообще очень удобен.
    Ответ написан
    3 комментария
  • Python как определить правильный падеж?

    @bbkmzzzz
    Обратиться к грамматике)
    1. После числительного один и составных числительных, оканчивающихся на один, ставится существительное в именительном падеже.

    2. После числительных два, три, четыре и составных числительных, оканчивающихся на два, три, четыре, ставится существительное в родительном падеже единственного числа.

    3. После числительного пять, шесть и т.д. и после слов много, мало, несколько, сколько и т.д. ставится существительное в родительном падеже множественного числа.


    И про ноль не забываем
    Ответ написан
    Комментировать
  • Как устроен list() в Python?

    @res2001
    Developer, ex-admin
    Когда вы программируете на питоне не важно как реализован список внутри, главное, чтобы он выполнял то, что от него требуется.
    Он вполне мог бы быть реализован и как связный списк. Такая реализация не отменяет операцию взятия элемента по индексу.
    Взятие элемента по индексу в питоне, это совсем не взятие элемента по индексу в массиве Си.
    Все операции в питоне (в т.ч. и взятие элемента по индексу) просто вызывают соответствующие функции обработчики. В функциях может быть какая угодно логика от Сишного взятия элемента по индексу, до прохождения списка до нужного элемента и т.п.
    Реализация каждого типа в питоне заполняет структуру указателей на функции, реализующих питоновские операции для этого типа. Вы выйдите на эту структуру, если дальше продолжите раскопки PyObject_VAR_HEAD.

    PS: Ваши выводы, основанные на структуре питоновского списка, верны.
    Для студента 1 курса очень не плохо!
    Ответ написан
    Комментировать
  • Как устроен list() в Python?

    15432
    @15432
    Системный программист ^_^
    https://docs.python.org/2/faq/design.html#how-are-...

    How are lists implemented in CPython?¶
    CPython’s lists are really variable-length arrays, not Lisp-style linked lists. The implementation uses a contiguous array of references to other objects, and keeps a pointer to this array and the array’s length in a list head structure.

    This makes indexing a list a[i] an operation whose cost is independent of the size of the list or the value of the index.

    When items are appended or inserted, the array of references is resized. Some cleverness is applied to improve the performance of appending items repeatedly; when the array must be grown, some extra space is allocated so the next few times don’t require an actual resize.

    Короче динамический массив. Непрерывный массив указателей на объекты
    Ответ написан
    1 комментарий
  • Как нарисовать несколько изображений в Python, используя tkinter?

    NeiroNx
    @NeiroNx
    Программист
    все потому что у вас одна переменная img а нужно массив равный количеству клеток - 8*8.
    либо передавать имя файла а не объект картинки.

    Проблема в том что переменная ограничивает число возможных объектов до 1, так как передается ссылка на объект.
    Ответ написан
    1 комментарий