Форум сайта python.su
0
del
Отредактировано kozlo22 (Апрель 22, 2013 10:18:20)
Офлайн
0
alexbadaloff, блин. Простите. Я туплю с утра.
Офлайн
3
kozlo22Чего не понял? Что нет типа переменных для знаков математических действий? Чисто, я могу записать строкой, могу int, float, а знак арифметического действия, что, не может быть переменной величиной отдельного типа? Но, это уже философия, потому что подсказали eval, но в другом месте меня предупредили, что eval может быть небезопасным.
Вот тут я вообще ничего не понял.
Отредактировано leonid_10 (Апрель 22, 2013 20:04:35)
Офлайн
568
leonid_10, Вы уж простите, но Вы настолько непонятно и сумбурно излагаете свои мысли, что понять Ваши чаяния весьма мудрено.
Офлайн
16
leonid_10
что eval может быть небезопасным
Отредактировано alexbadaloff (Апрель 23, 2013 08:19:13)
Офлайн
3
alexbadaloff
Думаю вам будет полезна данная статья (лучше прочитать до конца) http://ru-python.blogspot.ru/2012/06/eval.html
Если хотите совет: лучше реализуйте разбор строки сами. Как минимум вы будете понимать что происходит на каждом шаге. Как максимум сможете отсеивать некорректные (или в случае eval опасные) строки.
Офлайн
75
Ты хочеш сказать что в питоне нет средств для элементарной работы с числами и ветвлений в логике ? Или у тебя есть програма с которой питон-скрипт общается через консоль или както иначе, и ты не можешь розпарсить ответ? Розкажи что конкретно ты хочешь сделать: исходные данные, желаемый результат, какая у тебя ОС, версия питона и програмы с которой ты работаешь. Это блендер ведь?
Офлайн
568
leonid_10
попробую объяснить ещё раз: Допустим, есть формула y=k*x. Для создания анимации, например, нужно выполнить определённые условия: if x<3: нужно не умножать, а делить, if k<1 and k>0: нужно ни делить, а возводить в степень. Бред в определённой ситуации, но может быть алгоритмом для кисти художника. При этом изначально формула подана в строке, а изменять её нужно на ключевых кадрах, предварительно обработав определённое количество значений properties и задав цикл.
leonid_10
Есть строка с уравнением. Как произвести решение этого уравнения, не переписывая его в код?
Офлайн
3
SingularityЯ работаю с блендером и пишу экспортёр для рендерера Povray. Povray имеет возможность просчитывать объекты заданные не полигонами, а формулой. В данный момент я работаю над возможностью отобразить этот объект в блендере. Для этого мне и нужно пропарсить формулу. Но, написал же, что replace меня устраивает. Теперь всё в порядке.
Розкажи что конкретно ты хочешь сделать: исходные данные, желаемый результат, какая у тебя ОС, версия питона и програмы с которой ты работаешь. Это блендер ведь?
Офлайн
857
>>> import operator >>> operator.add(1, 2) 3 >>> operator.mul(1, 2) 2 >>> operator.truediv(1, 2) 0.5 >>>
Офлайн