Задать вопрос
Профиль пользователя заблокирован сроком с 1 апреля 2025 г. и навсегда по причине: подозрительная активность
  • Заведется ли 16GB ОЗУ на MacBook Pro a1278 (13-inch, Early 2011)?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    У жены практически аналогичная машинка, только mid 2012 - воткнул 16 гигов, прекрасно работают. Я бы попробовал. 630af01cd9159144332102.jpeg
    630af0cbcb4d3767547462.jpeg
    Ответ написан
  • Можете посоветовать видео блогеров обучающие программированию на Python?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Видео нужно тогда, когда ты прочёл книгу, вроде всё понял, но куда тыкать пока не понял. В видео можно посмотреть чисто практические приемы работы с IDE, с консолью, с системой. То, что слабо отражено в книгах. Чтоб не тыкаться как кутёнок в незнакомый интерфейс.
    А собственно язык лучше по хорошей книге и затем кодить, кодить, читать исходники других проектов, вникать, дебажить.

    Самое главное - понять, что язык программирования - это как лопата у агронома. Лопатой надо владеть? Надо. Достаточно ли агроному лопаты? Нет. Ему надо знать и уметь много чего - сорта, почвы, технологии, химию, а лопатой он делает только некоторую часть операций.
    Программисту надо знать в той или иной степени информатику, алгоритмы, структуры данных, языки программирования, базовые библиотеки, БД и СУБД, API, ООП, фреймворки, сети, протоколы, ИБ, тестирование (в части, касающейся программеров), да много чего. Язык там не на первом месте.

    Видосиками это не изучишь, как ни старайся.

    Из более-менее полезного видео поищи «алгоритмы и структуры на Python» от МФТИ, там десятка полтора лекций Хирьянова. Но это лучше после книги «Изучаем Python» М.Лутца.
    Ответ написан
    1 комментарий
  • Как передать значение переменной в другую функцию?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Вам надо одно из двух: либо вернуть значение из первой функции через return и затем использовать его, передав в другую функцию как параметр той функции, либо внутри первой функции поменять объект вне функции (файл, БД, глобальную переменную).
    Ответ написан
    Комментировать
  • Почему оператор if не работает?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Все приведённые коды работают. Во всех много лишнего.
    if prid_data in ('d', 'h', 'm', 's'):
        print('Угадал')
    Ответ написан
    2 комментария
  • Почему не работает регулярное выражение?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Знак доллара в конце паттерна уберите.
    Ответ написан
    Комментировать
  • Как получить все значения элементов массива?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Chesterfield25, вам необходимо добавить в ваш код проверку, меньше ли текущее значение max, чем значение очередного элемента массива, которое печатает цикл. Вы его не печатайте, а сравнивайте. Если max меньше очередного элемента, пишите очередной элемент в max. Как всё переберется, выводите полученный max.
    Ответ написан
    Комментировать
  • Запрещены ли вопросы с просьбами о code review?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    С точки зрения цели стать базой знаний, как указал Алексей Уколов - вроде как code review и не нужен.
    Но с точки зрения, что это косвенно повысит адекватный интерес к ресурсу и пропорционально увеличит вероятность достижения цели - я за code review.

    Тем более что таких запросов не так уж и много. Будут идти валом, как сейчас боты - можно будет думать об их негативном влиянии и, возможно, закручивать гайки.
    Ответ написан
    Комментировать
  • Не работает аннотация типов. IDE не выводит подсказки. Что не так?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    multiprocessing.Rlock хоть и с большой буквы, но это не класс, а функция:
    Note that RLock is actually a factory function which returns an instance of multiprocessing.synchronize.RLock initialized with a default context.


    Если хочется аннотации этого типа, то вот так:
    from multiprocessing.synchronize import RLock
    
    
    def main(locker: RLock) -> None:
        return locker.
    Ответ написан
    Комментировать
  • Как обновлять словари с вложенными словарями?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    a = {'a' : {'a' : 'some value'}}
    b = {'a' : {'b' : 'some_value'}}
    a['a'].update(b['a'])
    print(a)
    Ответ написан
    Комментировать
  • Как указать путь к файлу?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Рекомендую либо экранировать обратные слэши (как в моём примере), либо заменить их на прямые слэши (типа C:/Mydir/myfile.txt).
    Кроме того, убедитесь, что после пути к папке photo в вашем варианте стоит слэш; по-моему его там нет.

    Кроме того, конструкция random.choice(os.listdir('photo')) предполагает, что папка photo находится в папке, которая в данный момент для вашего скрипта основная. Но это может быть неожиданно не папка проекта.
    Рекомендую, например, сделать по-другому:
    from pathlib import Path
    
    project_dir = Path('C:\\Projects\\telebot_test_functions\\')
    photo_dir = project_dir / 'photo' 
    photo = open(random.choice([*photo_dir.iterdir()]), 'rb')
    Ответ написан
  • Когда я пишу команду в дискорде для получения данных с api, остаются скобочки; что делать?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Разобраться, что такое «скобочки». В этом вам поможет книга «Изучаем Python» М.Лутца. Серьезно. Я сам, когда начинал изучать Python, долго не мог найти в инете, что с этими скобочками не так. Даже в официальной документации об этом сказано как-то невнятно. Именно у Лутца это разжевано внятно и понятно.

    В вашем случае круглые скобочки - не просто скобочки; это литерал последовательности tuple, и то, что обернуто в скобочки и разделено запятой, становится последовательностью типа «кортеж» ( он же tuple).

    Вам надо почитать документацию по вашему боту и понять, какие типы принимает метод .add_field в качестве аргумента value, и это и передавать - очевидно, без скобок.
    Ответ написан
    Комментировать
  • Почему exe-файл бота на aiogram запускается не на всех компьютерах?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Почитайте тут. Вроде ваш случай там описан. Или очень похожий.
    Ответ написан
    Комментировать
  • Есть ли смысл переплачивать за поколение процессора в офисных задачах?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Офисные задачи (собственно ms office и иже с ним, браузер, почта… ) вполне успешно работают на i5 3-4 поколения с 8 гигами памяти. Это даже жирно.
    Вопрос скорее в потреблении. Каждое следующее поколение на тех же задачах обычно немного экономичнее, холоднее. Не требует столь активного охлаждения, соответственно тише и менее геморно в обслуживании.

    Для офиса на мой взгляд надо взять самый холодный проц, такой чтоб обошелся безвентиляторным радиатором, небольшую ssd и побольше ОЗУ для прожорливых браузеров. Плюс хороший блок питания, тут экономить не надо. Тихий большой низкооборотный вентилятор (дорогой!) на выдув из системника. И самую дешевую двухголовую видеокарту, т.к. офисный комп желательно с двумя мониторами. И ещё ИБП непременно, офисному компу полезно.
    Ответ написан
  • MySQL Master Slave не корректно работает?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    В принципе, можно настроить триггеры на slave. Трудно представить сценарий, который нельзя триггерами обработать. Но это, конечно, надо проектировать и кодить код. И тестировать.
    Мышкой это не натыкаешь.
    Ответ написан
    Комментировать
  • Калькулятор на Python?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    У вас несколько раз повторяется одинаковая строка. Подумайте, как сделать, чтобы она не повторялась.
    Также надо добавить обработку неверного ввода (не чисел и не мат.операторов) и обработку деления на нуль.
    Ответ написан
    Комментировать
  • Книги по базам данных?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Спросил у нашего преподавателя, его рекомендации ниже:
    Вот интересные книги:
    “Database Internals” by Alex Petrov,
    “PostgreSQL изнутри" Рогов.

    1 книга - работа в общем для баз данных,
    2 книга - конкретно PostgreSQL
    Ответ написан
    2 комментария
  • Как создавать экземпляры класса python?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    В первом приближении класс пользователей - это таблица (например, в реляционной базе данных). Таким образом, создание экземпляра для каждого пользователя суть внесение записи в таблицу. Каждая запись в таблице - это экземпляр класса, соответствующий пользователю.
    Реализовывать это в виде собственно класса можно разными способами - можно вручную прописывать связь полей таблицы и атрибутов класса, можно попытаться подтянуть средствами sql alchemy orm…
    Ответ написан
    Комментировать
  • Что делать, если отключил службу, отвечающую за пинкод в виндоусе, а пинкод есть?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Что делать, если отключил службу, отвечающую за пинкод в виндоусе, а пинкод есть?

    Поскольку мы не знаем, что именно ты там поотключал и как это в дальнейшем может сказаться на работе системы, рекомендации могут быть только самые общие.
    Установи систему заново.
    Когда вновь установишь windows, положи рядом с клавиатурой металлическую линейку и всякий раз, как чьи-либо руки полезут отключать сервисы и копаться в настройках windows, бей по тем рукам этой линейкой. Таким образом ты существенно снизишь вероятность возникновения подобной проблемы.
    Ответ написан
    Комментировать
  • Как поменять при выводе списка последнюю запятую на 'или'?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Подсказка:
    Выведи последовательность без последнего элемента, потом союз, потом последний элемент.
    Это просто. Можно сделать одной строчкой.
    Тебе понадобятся темы: f-строки и срезы.

    spoiler
    В скобках замечу, что очень полезно будет заодно изучить тему «списки», обратить внимание на литералы списков. Также порекомендую никогда не использовать имена стандартных типов (list, dict и т.п.) в качестве имен своих переменных. Если очень хочется, пиши my_list.
    Ответ написан
    2 комментария
  • Как получить значение в атрибуте href?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    for item in categories:
        item_url = item.find('a').get('href')
        print(item_url)
    Ответ написан
    Комментировать