Вопросы по теме 'python-dataclasses'
Почему классы данных Python 3.7 не поддерживают ‹ › ‹= и ›= или поддерживают?
Для версии 3.7.1 компилятора Transcrypt Python to JavaScript я сейчас использую новый декоратор @dataclass . Я ожидал, что ==, !=, <, >, >=, <= будет поддерживаться в соответствии с рефератом PEP , но вроде не так:
from...
586 просмотров
schedule
06.11.2022
Как сделать поля только для ключевых слов с помощью классов данных?
Начиная с 3.0 поддерживается создание только ключевого слова аргумента:
class S3Obj:
def __init__(self, bucket, key, *, storage_class='Standard'):
self.bucket = bucket
self.key = key
self.storage_class =...
3920 просмотров
schedule
24.06.2023
Как утверждать типы в классах данных python3?
Я использую новую функцию dataclass из Python3 , которая позволяет указывать тип полей класса. В этом примере field2 должен иметь тип List[int], и я передал ему List[str]. Этот код работает без сбоев, мне интересно, есть ли (автоматический)...
1354 просмотров
schedule
09.02.2023
Как показать код, сгенерированный при использовании декоратора класса @dataclass?
Python 3.7 представляет модуль dataclasses , который содержит декоратор @dataclass . Этот декоратор может генерировать функции класса. Как я могу распечатать эти сгенерированные функции?
809 просмотров
schedule
14.01.2024
Питонический способ проверить, имеет ли поле класса данных значение по умолчанию
В последнее время я использую python 3.7 и искал способы использовать новые классы данных. В основном у меня был метод, который перебирает поля класса данных и проверяет, имеют ли они значение по умолчанию:
from dataclasses import fields,...
1924 просмотров
schedule
01.06.2023
Есть ли способ использовать класс данных с полями по умолчанию, с __slots__
Я хотел бы поместить __slots__ в класс данных с полями со значениями по умолчанию. Когда я пытаюсь это сделать, я получаю эту ошибку:
>>> @dataclass
... class C:
... __slots__ = ('x', 'y', )
... x: int
... y: int = 1
......
1010 просмотров
schedule
17.01.2023
Поддерживает ли cython классы данных или что-то подобное
Меня интересует передача данных между кодом Python и Cython, чтобы данные были доступны из C и без GIL. Я думаю о достижении этого с помощью классов данных (начиная с py3.7), именованных кортежей (с хорошим синтаксисом определения, начиная с py3.6)...
1215 просмотров
schedule
06.02.2023
Как сделать размороженный экземпляр класса данных хэшируемым?
При определении класса данных с frozen=False (поведение по умолчанию) и последующем создании экземпляра объекта этого класса есть ли способ сделать этот объект хешируемым?
Зачем мне это нужно?
До Python 3.7 я использовал именованные кортежи...
485 просмотров
schedule
21.02.2023
Использование классов данных с Cython
Я использую cython для обфускации кода, поэтому производительность сейчас не проблема. Проблема заключается в использовании классов данных.
Во время компиляции при cythonize коде, содержащем определения классов данных, нет ошибок. Но при запуске...
595 просмотров
schedule
01.06.2023
Сериализация списка классов данных: str всегда вызывает repr
Я хотел бы сериализовать классы данных в строки. Это достаточно просто с dataclasses.asdict и созданием собственного метода __str__ . Он отлично работает даже для классов, членами которых являются другие классы данных или их списки. Однако вызов...
1236 просмотров
schedule
05.06.2022
Как можно использовать установщик свойств при использовании замороженных классов данных в Python
Я просто играл с концепцией классов данных Python и абстрактных классов, и то, что я пытаюсь достичь, - это в основном создать замороженный класс данных, но в то же время иметь один атрибут в качестве свойства. Ниже мой код для этого:
import abc...
705 просмотров
schedule
11.04.2022
Как лучше написать несколько предложений try для приведения строкового объекта json к классу данных?
У меня есть функция, которая получает несколько разных строковых объектов json с разными именами структур и/или полей, например:
event = '{"userId": "TDQIQb2fQaORKvCyepDYoZgsoEE3", "profileIsCreated": true}'
or
event = '{"userId":...
104 просмотров
schedule
04.02.2024
Константы классов Python в классах данных
Понимая, что приведенные ниже константы не являются истинными, пытаемся следовать PEP 8 Я хотел бы сделать «константу» в моем @dataclass в Python 3.7.
@dataclass
class MyClass:
data: DataFrame
SEED = 8675309 # Jenny's Constant...
2589 просмотров
schedule
18.07.2023
Как создать класс данных с параметром списка, который имеет значение по умолчанию и может быть назначен с помощью конструктора?
Существует ли простой способ создать класс данных со свойством списка items , имеющим значения по умолчанию [1, 2, 3] , чтобы я мог присвоить ему другие значения [4, 5, 6] с помощью конструктора MyStruct(items=[4, 5, 6]) ?
Если я запускаю...
74 просмотров
schedule
27.12.2022
Классы данных - связывание базовых методов
Я пытаюсь создать класс с двумя методами:
Данные запроса (как генератор)
Сохранить как json
@dataclass
class Data_Query:
hierarchic: str
sku: bool
pred_lenght: int
def query(self, db):
if (self.hierarchic ==...
59 просмотров
schedule
29.05.2022
Определение ограничений для полей в классе данных Python
Я новичок в классах данных python, и мне было интересно, есть ли умный способ определения ограничений для полей в классе данных python.
Предположим, у нас есть класс данных SomeConfiguration с 3 полями (field1, field2, field3), которые все являются...
331 просмотров
schedule
10.03.2022
Как создать класс, где тип равен int?
Я пытаюсь создать класс данных, который может генерировать схему clickhouse (sql-ish) из определений типов.
clickhouse, например, поддерживает:
Int8
Int16
Uint8
Uint16
В питоне этих типов не существует (афаик). Это просто int . Я...
125 просмотров
schedule
03.02.2023
Сбор экземпляра класса данных
Есть ли возможность мариновать / укроп an_instance следующим образом?
import dill
import pandas as pd
import numpy as np
from datetime import datetime, timezone
from dataclasses import make_dataclass, field
fields = [('float_val', float,...
435 просмотров
schedule
21.03.2024
Невозможно вызвать replace() для класса данных с InitVar
Определение следующего подкласса:
from dataclasses import dataclass, replace, field, InitVar
@dataclass
class MyDataClass:
foo: InitVar[str]
bar: str
foo_len: int = field(init=False)
def __post_init__(self, foo: int):...
98 просмотров
schedule
02.04.2023
Как хранить дополнительные атрибуты через kwargs в классах данных Python
Я хотел бы иметь класс данных Python с необязательными атрибутами, которые можно было бы передать во время инициализации через kwargs .
Что-то типа
@dataclass(allow_kwargs_init=True)
class Person:
name: str
birth_year: int
me =...
14 просмотров
schedule
05.07.2022