• Как красиво отсортировать список в Python?

    @OlBlack Автор вопроса
    Спасибо всем за участие. Но все же замечания JRasor-а не кажутся немного несостоятельными.
    В данном случае красота=простота. Я же не просила вундервафлю какую-то трудночитаемую написать в одну строчку.
    Так как очевидно что сложность данной задачи О(n). То есть нужен грубо говоря один for. В питоне один for замечательно заменяется ему-подобными конструкциями и занимают они как раз одну строчку.
    Весь трюк заключался в том чтобы правильно прописать ключ сортировки, что у меня не получалось.
    А так я всеми руками за понятный и читаемый код.
    Но в любом случае спасибо JRasor за напоминание - как нужно писать код. Перечитать, и в рамочку)
  • Как красиво отсортировать список в Python?

    @OlBlack Автор вопроса
    Спасибо! Все оказалось проще, видимо мне уже везде чудятся сложные конструкции. Только из-за того что compound_transpositions - это на самом деле результат вызова метода p.compound_transpositions() пришлось немного подправить вашу конструкцию. И получилось:
    >>>p.compound_transpositions() = [[1, 2], [5, 6], [6, 7], [7, 8], [8, 9]]
    >>>T.coefficients = [87, 57, 83, 99, 74, 18, 98, 11, 56, 26]
    >>>sorted_tr = sorted(p.compound_transpositions(), key=lambda x: T.coefficients[x[0]]-T.coefficients[x[1]])
    >>>print sorted_tr
    [[5, 6], [7, 8], [1, 2], [8, 9], [6, 7]]
  • Почему Python multiprocessing нестабилен?

    @OlBlack Автор вопроса
    Олег Цилюрик: Спасибо, внимательно ознакомлюсь. Дело в том что исходный проект писался в 2 этапа, двумя разными людьми. Первый был питонист и у него стояла задача такая же как и у меня, но поиск минимума функции для одной точки(то что я хочу распараллелить) находился в одну строчку, а основная проблема была в обсчете системы линейных ограничений размерности n+1, к которой в начале каждой серии экспериментов добавляется одно ограничение. И для нахождения фундаментального решения этой системы как раз видимо питон с нампи подходили, плюс человек знал питон.
    После чего я добавляла к этому проекту свою часть, которая, да, наверное не лучший вариант считать на питоне.
    Еще раз спасибо за ссылки, пойду скрещивать питон с с++))
  • Почему Python multiprocessing нестабилен?

    @OlBlack Автор вопроса
    Уважаемый nirvimel , еще вопрос в догонку. Как думаете, стоит ли попытаться в данном случае ту часть, которую хочется параллелить переписать под Cyton? Или использование цитона выгодно для написания, как вы говорили "мелочи"?
  • Почему Python multiprocessing нестабилен?

    @OlBlack Автор вопроса
    Спасибо за подробный ответ. Если вдруг найдете ту вторую статью о которой писали пришлите пожалуйста.
    С учетом всех рекомендаций по "готовке multiprocessing под Windows" я делаю вывод что лучше эту идею забросить. Кроме одной, которая у меня появляется - установить линукс и попробовать побороться там. Как считаете, стоит ли?
  • Почему Python multiprocessing нестабилен?

    @OlBlack Автор вопроса
    Изначально данный проект не подразумевал параллельных вычислений. Это были математические рассчеты, для которых Python+Numpy очень хорошо подходит. После того как все было написано возникла идея попробовать распараллелить то что можно, но тут питон подсунул такую бяку.
    Я все же хотела попытаться, но видимо придется отказаться от этой идеи.
    Была еще мысль ту часть которую хочется распараллелить написать под С++ и вызывать из питона. Даже вроде есть такая возможность с библиотекой Cyton. О ней недавно была статья на хабре. Но это казалось просто для небольших функций, а для целого метода, который внутри вызывает другие методы это ой-ой.