Задать вопрос
  • Как я могу запустить скрипт в Pycharm, используя CMD?

    shabelski89
    @shabelski89
    engineer
    Вы уверены что правильно определили куда PyCharm ставит интерпретатор ?
    У меня в проектах это \project\venv\Scripts\python.exe
    C:\Users\ashab\PycharmProjects\pdfhelper\venv\Scripts\python.exe

    там же лежит скрипт активации virtalvenv
    # до активации venv
    C:\Users\ashab>python -V
    Python 3.7.9
    
    C:\Users\ashab>C:\Users\ashab\PycharmProjects\pdfhelper\venv\Scripts\activate
    # после активации venv
    (venv) C:\Users\ashab>python -V
    Python 3.9.6


    при активированном venv
    python "D:\PyProjects\Test\Literal2.py"

    по завершению deactivate
    Ответ написан
    2 комментария
  • Возможно ли раздать Wi-Fi через спутник?

    @pfg21
    ex-турист
    wifi в текущем состоянии аппаратных железок дотянуть до спутника возможности нет.
    плюс Wifi работает в ISM диапазоне, который совпадает с линией поглощения паров воды. потому дальняя связь на нем практически не возможна.
    потому собственно его и отдали в свободный нелицензионное пользование .
    потому к примеру отдают диапазон 61 ггц (будущее вайфаев) - пик поглощения кислорода.

    со спутниками связь возможна в диапазона прозрачности атмосферы. в свободное пользования эти диапазоны не выдаются ибо хватает и коммерческих потребителей.
    Ответ написан
    Комментировать
  • Как быстро распарсить много json файлов на python?

    Maksim_64
    @Maksim_64
    ML Engineer
    Ну во первых, pandas read_json и json_normalize (для вложенных json). Затем этот фрейм или подсет фрейма отправляешь в базу, методом to_sql если все делаешь правильно с точки зрения pandas (весь код будет без единого цикла) то это ускорит очень серьезно. Еще больше можно ускорить библиотекой polars она имеет схожий синтакс с pandas у ней куда меньший функционал по манипуляции данных, но она фокусируется на скорости в том числе и чтения файлов.

    Думаю скорости pandas будет достаточно, если нет то polars. Начать лучше с pandas документация очень хорошая, да и кода всего ничего будет.
    Ответ написан
    1 комментарий
  • Как понять когда ставить пробел в строках,а когда нет в Питоне?

    xzripper
    @xzripper
    0xC0000005
    В print все аргументы, следующие за первым аргументом, будут добавлены к первому аргументу как единая строка с разделителем пробелом. Однако в input пробел автоматически не добавляется.

    Добавляйте пробел когда вам нужно. e.g 'string ' + '1'.
    Ответ написан
    1 комментарий
  • Ошибка json.decoder.JSONDecodeError: Extra data: line 6 column 3 (char 308), как её решить?

    Ну кривой у вас какой-то JSON получается. Не видя его мы вам ничем помочь не в состоянии.

    .replace("]", "").replace("[", "")
    Как минимум тут вы его портите, если внутри есть массивы.
    Ответ написан
    2 комментария
  • Часто ли телеграм боты подвергаются атакам и как вы этого избегаете?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    ЭЭЭ видимо так
    https://n0a.pw/telegram-get-remote-ip/
    Ответ написан
    Комментировать
  • Почему кириллица неправильно отображается?

    ipatiev
    @ipatiev
    Потомок старинного рода Ипатьевых-Колотитьевых
    В заголовке Content-Type надо также указывать и кодировку.
    Разумеется, в Питоне указывать любую кодировку кроме UTF-8 совершенно бессмысленно.
    Соответственно, заголовок должен быть
    Content-Type: text/html; charset=utf-8
    Плюс в первом принте лишние символы.
    Я не очень понимаю, какой софт используется, но в целом вот такой код выведет в нужном порядке - заголовок, пустая строка, две строки одна под другой
    print("Content-Type: text/html; charset=utf-8\r\n")
    
    print("Hello world!<br>")
    print('Привет мир!')
    Ответ написан
    1 комментарий
  • Правильно ли я понимаю устройство классов в python?

    Maksim_64
    @Maksim_64
    ML Engineer
    Нет у тебя абсолютно не правильное представление по все пунктам. Написание хорошего ответа на каждый вопрос потребует дней, при том что на все эти темы можно разговаривать на совершенно разных уровнях. Если хоть как-то в двух словах.
    1. OOP одна из парадигм в программировании в том числе поддерживаемая python.

    2. Объект это python абстракция для данных, все данные в python представлены в виде объектов или взаимоотношений между объектами. Отсюда и выражение все в python является объектом.

    3. В python каждый класс не явно наследуется от object класс. Да даже если мы не переопределим явно __init__ то он там есть. Например
    class MyClass:
        pass
    my_instance = MyClass()
    print(dir(my_instance))
    Там будет в том числе __init__ хотя мы его явно не определяли. __init__ это конструктор класса там могут быть заданы атрибуты которые будут в области видимости экземпляра класса, с которыми будут оперировать методы экземпляра класса, он выполнится при создании экземпляра класса.

    4. По скольку, ты еще совсем новичок, понятия "приватных" и "защищенных" атрибутов обсуждать совсем бессмысленно, к тому же их "приватность" она в ковычках, в python нет способа создать настоящий приватный атрибут, но это все совершенно лишнее для тебя сейчас и в обозримом будущем.

    5. В зависимости от того является ли определенный метод методом класса или методом экземпляра класса, то первый позиционный параметр метода это класс или экземпляр класса. Между программистами python их принято называть cls - для класса, self - для экземпляра класса. Так как ты в начале пути будешь работать с методами экземпляра класса, да и необходимость создавать методы класса она значительно реже.

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

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Ошибка в забытой запятой.
    Ответ написан
    Комментировать
  • Как правильно сформулировать индексы?

    onegreyonewhite
    @onegreyonewhite Автор вопроса
    Методом подбора и внимательного исследования стаковерфлоу, получилось что-то вроде такого:
    1. Нужно в миграцию добавить
      django.contrib.postgres.operations.TrigramExtension()

    2. Нужно для каждого поля создать индекс (на примере name)
      django.contrib.postgres.indexes.GinIndex(django.contrib.postgres.indexes.GinIndex(django.contrib.postgres.indexes.OpClass(Upper('name'), name='gin_trgm_ops')))



    Это капец как неочевидно, но для поиска по icontains работает именно так. Сорян, что потревожил сообщество.
    Ответ написан
    Комментировать
  • Есть ли для Python простые в использовании ORM с поддержкой asyncio и type hints?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    Вы все популярные перечислили, в Джанге тоже нет
    че-то был уверен что Пони близко, когда-то юзали ее именно изза скорости, но изза оригинального синтаксиса зареклись....

    тут коменты посмотрите, может уже что-то поменялось
    но я думаю, такого не может быть в принципе - только обертками и упрощениями

    с другой стороны, если гонитесь за скоростью, то ORM как бы и не нужен,но это мое мнение
    Ответ написан
    1 комментарий
  • Есть ли для Python простые в использовании ORM с поддержкой asyncio и type hints?

    fenrir1121
    @fenrir1121
    Начни с документации
    Алхимия де-факто стандарт. Можно попробовать врапперы над ней, хотя все тоже с проблемами. Eсть подозрения, что сейчас алхимия и пайдентик апнулись до 2 версии и оживет sqlmodel.

    Что до списка выше есть вот такой разбор от контрибьютора черепашки. Можно глянуть по цифрам и выводам, с чем-то из ограничений все равно приходится мириться.
    Ответ написан
    2 комментария
  • Как обойти блокировки сайтов?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Вы столкнулись с типичным конфликтом интересов. Видимо стиму не выгодна ваша деятельность и они хотят её осложнить для вас, сделать её для вас дороже.
    Это как борьба с читерством.
    Никто вам не скажет правил, по которым вас блокируют, иначе вы тут же начнёте их обходить. Более того, чтобы правила не обходили, их рандомизируют, динамически меняют, разносят во времени момент принятия решения о недобросовестности клиента и момент его блокировки, чтобы нельзя было по своим действиям и реакции системы блокирования понять и вычислить правила блокировки. Лаг между этими моментами всячески варьируют, рандомизируют, дают разное число попыток, чтобы осложнить подбор и вычисление граничных критериев системы защиты.

    Не факт, конечно, что там именно такая параноидальная и замороченная система, но такое определённо имеет смысл, если надо предотвратить долбёжку и не целевое использование АПИ.

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

    Ещё вы рандомизируете юзер-агент, но возможно имеет смысл притвориться браузером и не скакать по юзер-агентам так уж часто, тем более по рандомным.
    Сопоставить запросы между собой можно и при разных адресах, а выходные адреса тора, как вам уже сказали в комментарии к вопросу, немногочисленны и всем известны.
    Ответ написан
  • Не понимаю, почему данные в разных строках?

    rozhnev
    @rozhnev
    Fullstack programmer, DBA, медленно, дорого
    Потому что нужно выучить хотя бы базовый синтаксис SQL! Одна строка вставляется одним запросом, каждый инсерт вставляет новую строку!
    execute('INSERT INTO table (FIO, Address, Email) VALUES (?, ?, ?)', ('ФИО', 'Your Address', 'your@email.com'))
    Ответ написан
  • Как сделать возможность редактировать результат?

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

    Это в общем.
    В частности, чтобы в вашем коде можно было “менять числа не перезапуская программу”, это надо в программе предусмотреть. Например, так:
    while True:
        Поля = input('Кол-во полей? ')
        Заводы = input('Кол-во заводов? ')
        Лаборатории = input('Кол-во лаб.? ')
        
        print ('Поля', Поля)
        print ('Заводы', Заводы)
        print ('Лаборатории', Лаборатории)

    Это самый простой способ реализации, что называют «в лоб». Как именно это сделать «по уму» - надо приложить ум.
    За вас это могут сделать, но не здесь, а на freelance
    Чтобы вы смогли самостоятельно сделать это, см.первую часть моего ответа.
    Ответ написан
    2 комментария
  • Как подключиться к Wifi на C++?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тебе работать с Wifi на С++ нужно будет только в одном случае - когда ты разработчик драйвера Wifi устройства.

    В остальных случаях - ты пишешь обычные приложения на С++ которые используют сокеты TCP/UDP, которые (сокеты) в свою очередь работают через стек технологий ОС для кидания пакетов в Wifi интерфейсы в соотвествии с правилами таблиц маршрутов.
    Ответ написан
    2 комментария
  • Где искать svg всех городов, районов, областей, стран?

    hint000
    @hint000
    у админа три руки
    CityCat4, почти согласен
    Я бы начал с 2gis или Яндекс-Карт.
    Только не 2gis или Яндекс, а OSM (OpenStreetMap), ибо Open - ничего не спрятано, вот они все исходные данные, вот оно описание формата, легче уж некуда.
    https://www.openstreetmap.org/#map=12/42.8768/74.6013
    https://wiki.openstreetmap.org/wiki/RU:Tag:boundar...
    Ответ написан
    2 комментария
  • Странная не последовательная работа функции в tkinter python?

    @oxidizerby Автор вопроса
    Подошло решение от @Vindicar
    Только немного изменил в моём случае лучше использовать root.update()
    Изменил функцию так:
    def run():
        print(1)
        label1['text'] = 'Но он меняется после sleep и print(2) и print(3)'
        root.update() # Вот эта строка решает проблему!
        print(2)
        sleep(5) # Для наглядности
        print(3)
    Ответ написан
    Комментировать
  • Как мне применить список из функции в другой функции?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    А в чем, собственно, проблема? Передайте это значение в функцию в качестве аргумента, или вон вы глобальной переменной уже пользуетесь, можете и тут наговнокодить так же.
    Вы не объясняете что конкретно у вас не получается. В чем вопрос? Предоставляете довольно объемный код, который, судя по вопросу, написали не вы и чего хотите? Чтобы вам краткий, но исчерпывающий курс по программированию с нуля тут изложили? На какой-то другой ответ в вопросе просто недостаточно информации.

    А бесплатных курсов и репетиторов тут нет.
    Ответ написан
    2 комментария