Ответы пользователя по тегу Python
  • Зависимости Python?

    Nirail
    @Nirail
    Дайте мне повод и я во все решу
    Совместимость версий, если разработчики придерживались правил, можно почитать тут: https://www.python.org/dev/peps/pep-0440/#compatib...

    Обычно, пакеты одной и той же major-версии обратно совместимы (код для младших версий совместим со старшими). Но нельзя исключать, что при использовании пакетов были использовано незадокументированное поведение, и тогда поведение может отличаться.

    Устанавливать PyCharm не нужно, достаточно установить Python нужной версии и использовать виртуальное окружение (https://docs.python.org/3/tutorial/venv.html для Python3). Внутри которого установить необходимые версии зависимостей.
    Ответ написан
    Комментировать
  • Почему не отрабатывает удаление файлов через скрипт?

    Nirail
    @Nirail
    Дайте мне повод и я во все решу
    Использовать "|" в subprocess можно только в случае, если параметр shell=True, но это не безопасно, и может приводить к разным неочевидным проблемам.

    Если нужно поведение как в системе, то можно воспользоваться os.system(cmd).

    Наиболее правильным решением будет сделать аналогичное поведение, но на основе Python.
    Если поведение find не хочется воспроизводить, но можно find запустить в subprocess, получить его вывод (список файлов), которые потом в цикле из Python и удалять.
    Ответ написан
    1 комментарий
  • Как работает __init__.py?

    Nirail
    @Nirail
    Дайте мне повод и я во все решу
    Кроме того, что он позволяет питону интерпретировать директория как пакет, в __init__.py может быть включен различный код инициализации, например:
    • переменная __all__
    • проверка ограничений при использовании пакета
    • сообщение о deprecated
    Ответ написан
    Комментировать
  • Почему программа завершается на Process finished with exit code 0?

    Nirail
    @Nirail
    Дайте мне повод и я во все решу
    Выглядит так, будто запускает неправильный файл (не main.py), нужно проверить что в PyCharm стоит запуск правильного файла в конфигурации.
    Run -> Edit Configuration... -> Script Path
    Ответ написан
    Комментировать
  • Как добавить python 3 в PyCharm?

    Nirail
    @Nirail
    Дайте мне повод и я во все решу
    1) Похоже в системе не установлен Python3 -> sudo apt-get install python3
    2) Для использования Python лучше всего создавать виртуальные окружения, подробнее можно почитать: https://docs.python.org/3/library/venv.html , после установки python3 при добавлении интерпретатора в PyCharm должна быть настройка, про создание виртуального окружения для проекта.
    Ответ написан
  • Как sublimerepl установит на горячую клавишу?

    Nirail
    @Nirail
    Дайте мне повод и я во все решу
    Такое можно сделать следующим образом:
    включаем логирование команд в Sublime:sublime.log_commands(True)
    Выполняем необходимую команду, получаем команду, в данном случае:
    repl_open {"cmd": ["python", "-u", "$file_basename"], "cwd": "$file_path", "encoding": "utf8", "extend_env": {"PYTHONIOENCODING": "utf-8"}, "external_id": "python", "syntax": "Packages/Python/Python.tmLanguage", "type": "subprocess"}

    Заходим в Preferences -> Key Bindings - User
    Вставляем строку:
    [{ "keys": ["ctrl+f11"], "command": "repl_open", "args": {"cmd": ["python", "-u", "$file_basename"], "cwd": "$file_path", "encoding": "utf8", "extend_env": {"PYTHONIOENCODING": "utf-8"}, "external_id": "python", "syntax": "Packages/Python/Python.tmLanguage", "type": "subprocess"} }]

    В результате получаем привязку на CTRL+F11.
    Ответ написан
    1 комментарий
  • Python: как читать непрерывный вывод?

    Nirail
    @Nirail
    Дайте мне повод и я во все решу
    Можно как-то так:
    Windows:
    pipe.py:
    import sys
    while True:
    	line = sys.stdin.readline()
    	print(len(line))

    вызов:
    ping 8.8.8.8 -t | pipe.py
    Для Linux аналогично.
    Ответ написан
    Комментировать
  • Как реализовать парсинг ip адрессов с веб страниц на python?

    Nirail
    @Nirail
    Дайте мне повод и я во все решу
    С помощью существующих средств Python:
    1) С помощью urllib2 можно скачать страницу с www.zone-h.org/archive.
    2) Найти на странице все нужные ссылки, например поиском с помощью regex.
    3) Пройти по полученным ссылкам, с помощью urllib2 скачать страницу, из нее вытащить нужные строки (ip-адрес) и записать в файл
    4) ...
    5) PROFIT

    Как скачать страницу с помощью urllib2 можно легко найти в интернете.
    Как найти в большом тексте определенную строку - тоже не проблема.
    Ответ написан
    Комментировать