170 похожих чатов

Допустим, у меня есть json файл с полями: data_type = {“spend”:

“float”, “sale”: “int”}
понятно, что в питоне в дикте можно было бы закастить напрямую:
data_type = {“spend”: float, “sale”: int}

вопрос в том, как я могу закастить тип данных с помощью json?)

чтоб я смог сделать что-то типа такого:
>> data_type[“spend”](2)
>> 2.0

15 ответов

22 просмотра
🎱- Автор вопроса

до этого я хранил так: data_type = { "spend": float, "ratio_installs": float, "for_sale": int }

ужас

🎱- Автор вопроса
Pavel Павлик
ужас

Павлик, есть идеи?)

🎱
до этого я хранил так: data_type = { "spend": ...

У тебя тут тип для каждого поля, а ты говоришь, что у тебя там словно есть какая-то схема и нужно преобразовать имя типа в тип

🎱
до этого я хранил так: data_type = { "spend": ...

также работает и с кастомными классами >>> class A: ... def __init__(self, a): ... self.a = a ... >>> a = eval('A')('2') >>> a.a '2'

Oleg Chaplashkin
также работает и с кастомными классами >>> class A...

нельзя никогда совать в eval, то что приходит из вне

Pavel Павлик
нельзя никогда совать в eval, то что приходит из в...

чел задал вопрос, получил ответ))) может он там просто пет проектом занимается или ему надо одноразку написать и конвертить данные? ну да, не самое лучшее решение, я бы написал мапу "имя" - "тип", но раз хочется, то и так работает :)

🎱- Автор вопроса
Pavel Павлик
У тебя тут тип для каждого поля, а ты говоришь, чт...

да, если это json. Я ж не могу в json хранить сам тип.

🎱- Автор вопроса
Oleg Chaplashkin
также работает и с кастомными классами >>> class A...

если ща другого решения не найду, придется костылить)

🎱
да, если это json. Я ж не могу в json хранить сам ...

Можно взять dataclass-factory и использовать TypedDict. Но я бы тебе посоветовал заменить словари на номральные модели и работать с ними

а может оно не надо?

🎱- Автор вопроса
Vadim
а может оно не надо?

задача такая стоит. Типа надо читать этот конфиг файл с жсоном и кастить типы через ключ

🎱
задача такая стоит. Типа надо читать этот конфиг ф...

можно чуть подробнее именно исходную задачу?

🎱- Автор вопроса
Tishka17
можно чуть подробнее именно исходную задачу?

есть пандас датафрейм, там типы иногда кастятся неправильно, чтобы не допустить этого, нужно в жсон кастить эти типы вручную, и читать эти типы из жсона в методе base класса

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта