Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Python Eval, как вызвать исключение при попытке вычисления с недопустимым параметром
|
|||
|---|---|---|---|
|
#18+
Добрый день всем я в eval() выполняю определённые действия заданные пользователем eval(s,dic) 1. в dic очень много переменных и пользователь может написать в расчёте любую из них 2. в программе некоторые величины приняты за отсутствующие значения, н-р -777.0 подскажите кто знает как заставить eval при попытке использовать эти значения для расчёта вызвать исключение? т.е. я хочу переопределить GetKeyValue у dic ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2015, 14:42 |
|
||
|
Python Eval, как вызвать исключение при попытке вычисления с недопустимым параметром
|
|||
|---|---|---|---|
|
#18+
пока остановился вот на таком варианте Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2015, 06:32 |
|
||
|
Python Eval, как вызвать исключение при попытке вычисления с недопустимым параметром
|
|||
|---|---|---|---|
|
#18+
Опишите всю задачу, сильно сомневаюсь в необходимости применять eval. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2015, 10:28 |
|
||
|
Python Eval, как вызвать исключение при попытке вычисления с недопустимым параметром
|
|||
|---|---|---|---|
|
#18+
FishHook, в чужой проге можно записать строчку, которая выполняется много раз с различными данными, до цикла код вписать нельзя можно настроить диалог, вот в нём я решил что юзеры будут писать формулы бывает что данные некоторые невалидные (отсутствующие), что бы не заморачивать пользователя с проверками на их присутствие в данных вот такая фигня и понадобилась PS:это не всё решение, ещё буферизацию добавил что бы строка каждый раз не компилировалась ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2015, 13:58 |
|
||
|
Python Eval, как вызвать исключение при попытке вычисления с недопустимым параметром
|
|||
|---|---|---|---|
|
#18+
И что, пользовательских данных в виде, скажем, JSON недостаточно для решения задачи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2015, 16:13 |
|
||
|
Python Eval, как вызвать исключение при попытке вычисления с недопустимым параметром
|
|||
|---|---|---|---|
|
#18+
FishHook, а писать их кто будет эти пользовательские данные? (их очень много, на каждый "предмет" свои формулы) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2015, 19:32 |
|
||
|
Python Eval, как вызвать исключение при попытке вычисления с недопустимым параметром
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan), А что, если в этом коде будет удаление всех директорий и файлов из home директории юзера, у которого этот код выполняется? Вообще eval -- это слишком опасная штука, и подсовывать туда то, что приходит от пользователя, очень неразумно с точки зрения безопасности. Эдакая питон-инъекция. Хотите лишь формулы -- напишите простенький парсер. Это типичная олимпиадная задачка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2015, 19:37 |
|
||
|
Python Eval, как вызвать исключение при попытке вычисления с недопустимым параметром
|
|||
|---|---|---|---|
|
#18+
NekZ, это десктоп-приложение, которое использует питон как интерпретатор для расчётов зачем юзеру писать что то левое, он это и так может сделать без всякого питона ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2015, 21:30 |
|
||
|
Python Eval, как вызвать исключение при попытке вычисления с недопустимым параметром
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan), Не, ну это, конечно, клёво, но всё-таки не совсем профессионально, дать возможность пользователю выстрелить себе в ногу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2015, 12:08 |
|
||
|
Python Eval, как вызвать исключение при попытке вычисления с недопустимым параметром
|
|||
|---|---|---|---|
|
#18+
NekZ, не вижу смысла им (создателям) напрягаться, для десктопа это нормально а пользователи и так могут какой угодно код писать, я всего лишь пытаюсь их от этого уберечь как можно больше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2015, 14:47 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38915033&tid=1461893]: |
0ms |
get settings: |
7ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
59ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 383ms |

| 0 / 0 |
