Ответы пользователя по тегу Python
  • UWSGI и ошибки импорта?

    Vintorez
    @Vintorez
    Не уверен, но возможно это размышление поможет. Обычно ошибки типа "cannot import name" возникают если пути указаны неверно. Внутренние пути проекта указаны относительно самого проекта. А вот знает ли сам модуль uwsgi путь до проекта?! В настройках модуля есть опция chdir, которая переходит в нужный вам каталог еще до запуска модуля. Возможно она у вас не указана. Либо неверно указана переменная pythonpath.
    Например, я запускаю uwsgi с помощью supervisor (но можно и без него) вот такой командой:
    /usr/local/bin/uwsgi --yaml /etc/uwsgi/apps-enabled/uwsgi.yaml

    а сам файл настроек uwsgi.yaml выглядит так:
    uwsgi:
        uid: user_name
        gid: user_group
        socket: /tmp/uwsgi.sock
        chmod-socket: 666
        chdir: /opt/project_dir/
        pythonpath: /opt/project_dir/project_name/
        env: DJANGO_SETTINGS_MODULE=project_name.settings
        module: project_name.wsgi
        max-requests: 5000
        buffer-size: 32768
        post-buffering: 8192
        enable-threads: 1
        harakiri: 660
        reload-mercy: 8
        master: 1
        no-orphans: 1
        vacuum: 1

    Возможно пригодится.
    Ответ написан
  • Как правильно написать regexp?

    Vintorez
    @Vintorez
    Вот так:
    regx = re.compile(r"""_\(['"](?P<value>.+)['"]\)""")
    Ответ написан
  • Как правильно написать regexp?

    Vintorez
    @Vintorez
    Мне кажется проверка на двойные и одинарные кавычки внутри это лишнее. Я думаю, вам будет достаточно написать так: regx = re.compile(r"""_\(.*\)""")
    Ответ написан
  • Urllib2 в python: не получается получить страницу, как в таком случае перейти к следующей странице?

    Vintorez
    @Vintorez
    У вас есть 2 варианта:
    1. Перед отправкой get-запроса отправлять head-запрос с целью проверить какой код вернется (в этом случае исключение не вызывается).
    2. Ловить исключение отправки get-запроса, как сказал @SolidlSnake блоками try/except.

    Довольно понятные примеры на оба этих варианта приведены вот здесь:
    stackoverflow.com/a/16778473
    Ответ написан
    Комментировать
  • Как установить python 3.3 по умолчанию в ubuntu 13.10?

    Vintorez
    @Vintorez
    Чтобы установить python 3-ей версии по умолчанию в ubuntu есть 2 способа:

    1. добавляете вот такую строчку alias python=python3 в ваш ~/.bashrc или ~/.bash_aliases файл и обновляете сам файл source ~/.bashrc (этот вариант будет работать только для той учетной записи, под которой вы добавляете алиас ).

    2. выполнить sudo ln -sf python3 /usr/bin/python. эта команда обновит ссылку на питон в вашем /usr/bin каталоге (этот вариант будет работать для всех учетных записей).

    Естественно, оба варианта будут работать только если питон 3 уже установлен на машину :)

    Насчет sublime text 3 @brutal_lobster привел правильный конфиг. Единственное, что этот конфиг сработает, если в /usr/bin/ имеется файл python3.3. Если его там нет, путь нужно будет указать абсолютный. Например такой: "cmd": ["/usr/bin/python3", "-u", "$file"],
    Ответ написан
    2 комментария