Sergey
за счет синтаксиса и вообще подхода
Sergey
еще вопрос, как закончить корректно исполнение скрипта? просто return или exit(0) или еще что то... лучшая практика
Tishka17
эм, оберни все в функцию и lелай return из нее
Sergey
окей, я просто думал может быть что то особенное нужно перед закрытием скрипта
Andrey
If name == "__main__"...
Tishka17
это кстати тоже надо
Boriskas
кто нить знает как в shared_task селери передать InMemoryUploadedFile
МишанЯ
Andrey
Ну не всегда)
А когда не надо?
Влад 🇺🇦
Всем привет, помогите создать json файл в цикле на питоне..
Влад 🇺🇦
я не силен в питоне.. есть скрипт который создает json на основе данных из гита но нужно эти данные привести в определенный формат на json, кто поможет ? в долгу не останусь
Dmytro
Здравствуйте. Нужно создать несколько переменных в python с именем, указанным в некоей переменной s="var_name". Как это сделать? eval() не позволяет создавать переменные
Dmytro
ну, доступ к тексту, передаваемому в качетсве параметра буду иметь только я. Или все равно стоит избавится от нее как можно раньше?
Dmytro
Использовать dict
нужно считать формулы такого вида "a11+a43*3+b00*5"
Dmytro
как по мне, самый простой способ через eval. Нет желания морочиться с логикой.
Artemii
Скажу честно, я у меня тоже такая задача была, ничего лучше exec не придумал
Святий Сучий
нужно считать формулы такого вида "a11+a43*3+b00*5"
записать даные в словарь а потом eval()
Святий Сучий
Попробуй
Artöm
Айда переделывать namedtuple :)
Почти всегда значит можно, если предоставлен определеный уровень безопасности
Artöm
Проверка имен, вайтлисты, вот это все
Dmytro
записать даные в словарь а потом eval()
тогда придется переписывать формулу как "dict['a11']+dict['a25']*6"
Tishka17
x='__import__("os", globals(), locals(), [], 0).system("echo 123")' print(eval(x))
Dmytro
Нет, eval('...', locals=dict)
а, серьезно? Спасибо большое
Максим
Насколько сложные выражения?
Dmytro
нужно считать формулы такого вида "a11+a43*3+b00*5"
такие вот, содержащие от 5 до 50 переменных
Максим
Скобки есть?
Dmytro
нет
Максим
Очень просто тогда
Dmytro
только + и *
Максим
сумма произведений
Максим
а, ну тогда ещё проще
Максим
Разбиваем текст по "+"
Dmytro
а почему он именно текстом?
а как можно хранить формулы еще? В виде деревьев сложно.
Tishka17
ну в данном случае дерево - просто
Максим
Дальше разбиваем по * и считаем произведение
Максим
Это простейшая задача, если так
Tishka17
http://jsonlogic.com вот могу ещё посоветовать
Максим
Если формулу не нужно менять - дерево сильно сложно
Dmytro
эм, в виде функции в коде?
формул неограниченное количество :\
Tishka17
формул неограниченное количество :\
так только ты к ним доступ имеешь или они грузатся извне откуда-то?
Dmytro
Только я. Но и добавляться они в будущем будут.
Co(n)stantine👨‍🔬
livestream
Максим
Разбиваем текст по "+"
Максим
Дальше разбиваем по * и считаем произведение
Aragaer
а где митап?
Aidar
а как можно хранить формулы еще? В виде деревьев сложно.
Почему деревья сложно? Уже всё реализовано давно, бери и пользуйся
Aidar
подскажите тогда, где их можно найти?
Если надо хранить и считать формулы, можешь попробовать работать в символьных вычислениях, есть такая штука как sympy
Aidar
Может разбирать формулы, объявлять переменные и вычислять их. Под коротком деревья
Aragaer
ну а на самом деле наверняка ж можно взять питонячий парсер и получить на выходе дерево
Aragaer
а потом проверить, что там только арифметика, а потом сделать эвал этого дерева
Aragaer
https://stackoverflow.com/questions/2371436/evaluating-a-mathematical-expression-in-a-string - первый результат в гугле
Aidar
Не надо делать eval, это путь в ад
Aragaer
см второй ответ
🍁 Jaŭhien
Тут пару недель назад вспоминали про safe_eval
Co(n)stantine👨‍🔬
а где митап?
начнется через несколько минут, где проходит не знаю🙃
Aragaer
ясно
Co(n)stantine👨‍🔬
ясно
Доклады: - Алексей Кузнецов "Тестирование инфраструктуры" - Алексей Фирсов "Вся мощь в JWT, JWS, JSS JWS, JWA, JWK and JWE и зачем они нужны​" - Павел Лонкин "Решение проблемы консистентности распределенных данных в микросервисах для Python-проектов"
Co(n)stantine👨‍🔬
Ну и в начале вродь доклад для джунов - Евгений Идзиковский "Инструкция по игре жизнь. Какие навыки прокачивать"
Aragaer
а какой-нибудь кофебрейк с пиццей?
Co(n)stantine👨‍🔬
а какой-нибудь кофебрейк с пиццей?
в зал пришли сразу с кофеечком и печенюшками
🍁 Jaŭhien
блин, не похавать что ли
Alex
- Алексей Фирсов "Вся мощь в JWT, JWS, JSS JWS, JWA, JWK and JWE и других трехбуквенных сокращений."
Aragaer
ну а зачем еще ходить на митапы кроме как халявно пожрать
Andrew
блин, не похавать что ли
На предыдущих был перекус