python-dataclasses相关内容
我只是在玩弄Python数据类和抽象类的概念,我试图实现的基本上是创建一个冻结的数据类,但同时将一个属性作为属性。以下是我执行此操作的代码: import abc from dataclasses import dataclass, field class AbsPersonModel(metaclass=abc.ABCMeta): @property @abc.abstr
..
我注意到Sphinx呈现类描述的行为发生了变化。给定此代码 # my example happens to be a dataclass, but the behavior for # regular classes is the same @dataclass class TestClass: """This is a test class for dataclasses.
..
我有以下课程 @dataclass_json @dataclass class Input: sources: List[Sources] =None Transformations: List[str] =None 以及: @dataclass_json @dataclass class Source: type: str =None label:
..
Python3.7引入了dataclasses来存储数据。我正在考虑采用这种比词典更有条理、结构更好的新方法。 但我有一个疑问。Python将键转换为DICT上的散列,这使得查找键和值的速度更快。数据类实现了类似的东西吗? 哪个更快?为什么? 推荐答案 Python中的所有类实际上都在幕后使用字典来存储它们的属性,您可以在文档中阅读here。要更深入地了解Python类(以
..
我一直在研究作为命名元组(必须在结构中分组数据时通常使用的)的替代方案的Python3.7的数据类。我想知道数据类是否与属性修饰符兼容,以便为数据类的数据元素定义getter和setter函数。如果是这样的话,这是在什么地方描述的吗?或者有可用的例子吗? 推荐答案 确实有效: from dataclasses import dataclass @dataclass class
..
我有一个数据类对象,其中嵌套了数据类对象.但是,当我创建主对象时,嵌套对象变成了字典: @dataclass第一类:f_one: 整数@数据类第一类:f_one: 整数f_two: str@数据类第二类:f_三:strf_four:一数据 = {'f_three':'三','f_four':{'f_one':1,'f_two':'二'}}二 = 二(**数据)二二(f_three='三', f_
..
当数据类中有一个字段的类型可以是任何类型时,如何省略注解? @dataclass班级最爱:收藏编号:int = 80085fav_duck = object()fav_word: str = '土豆' 似乎上面的代码实际上并没有为 fav_duck 创建一个字段.它只是使它成为一个普通的旧类属性. >>>收藏夹()收藏夹(fav_number=80085, fav_word='土豆')>>>
..
蟒蛇^3.7.尝试创建嵌套数据类以处理复杂的 json 响应.我设法通过为 json 的每个级别创建数据类并使用 __post_init_ 将字段设置为其他数据类的对象来做到这一点.然而,这会创建大量样板代码,而且嵌套对象没有注释. 这个答案帮助我更接近使用包装器的解决方案: https://stackoverflow.com/a/51565863/8325015 但是对于属性是
..
如何将值从基础数据类升级到继承自它的数据类? 示例(Python 3.7.2) from dataclasses import dataclass@数据类班级人物:名称:str气味:str =“好"@数据类班级朋友(人):# ...更多字段def say_hi(self):打印(f'嗨{self.name}')朋友 = 朋友(姓名 =“亚历克斯")f1.say_hi() 打印“嗨亚历克斯
..
背景 我使用数据类来创建嵌套数据结构,我用它来表示复杂的测试输出. 以前我通过创建多个顶级数据类然后使用组合来创建层次结构: from dataclasses import dataclass@数据类元类:颜色:str尺寸:浮动@数据类类点:x:浮动y:浮动东西:元point1 = Point(x=5, y=-5, stuff=Meta(color='blue', size=20))
..
Python 3.7 提供了具有预定义特殊功能的新数据类. 从概述的角度来看,dataclasses 和 SimpleNameSpace 都提供了很好的数据封装工具. @dataclass类 MyData:名称:str年龄:intdata_1 = MyData(name = 'JohnDoe',年龄 = 23)data_2 = SimpleNameSpace(name = 'JohnDoe
..
我正在尝试使用 Python 中的数据类来弄脏我的手,我想做的是在我的类中有一个计算字段,并将 sort_index 字段添加到调用中,但也想让它冻结,这样我就不能定义后修改该类的任何属性.下面是我的代码: from dataclasses import dataclass, fielddef _get_year_of_birth(age: int, current_year: int=2019
..
我正在尝试构建一个 @dataclass 来定义架构,但实际上并未使用给定成员进行实例化.(基本上,我为了其他目的劫持了方便的 @dataclass 语法).这几乎就是我想要的: @dataclass(frozen=True, init=False)类棘手:事情1:int事情2:strdef __init__(self, thing3):self.thing3 = thing3 但是我在 __
..
我有一个函数可以接受任何 dataclass 的实例.什么是合适的类型提示? 在python文档中没有找到官方的内容 这是我一直在做的,但我认为这是不正确的 from 输入 import Any, NewTypeDataClass = NewType('DataClass', Any)def foo(obj: 数据类):... 另一个想法是使用协议 具有这些类属性 __datacl
..
我正在尝试使用新的 python 数据类来创建一些混合类(在我写这篇文章时,我认为这听起来像是一个轻率的想法),但我遇到了一些问题.看下面的例子: 从数据类导入数据类 @dataclassNamedObj 类:名称:strdef __post_init__(self):打印(“NamedObj __post_init__")self.name = "姓名:" + self.name@数据类
..
说a我在python3中有一个数据类.我希望能够对这些对象进行哈希处理和排序.我不希望这些是一成不变的. 我只希望它们按ID排序/散列. 我在文档中看到我可以只实现_ hash _以及所有其他功能,但是我想让datacalses为我完成这项工作,因为它们旨在解决这个问题. 从数据类中的 导入数据类,字段@dataclass(eq = True,order = True)班级类别:i
..
我的目标是在Django PostgreSQL中创建类似结构的对象,例如: specs.coordinate.x规格协调specs.coordinate.z 因此, x , y , z 应该是坐标的子类.它们也应该是可变的,因此不能使用命名的元组. 我已经尝试使用新的数据类: django.db导入模型中的 从数据类导入数据类类Specs(models.Model):名称= m
..
过去在github中有一个项目,允许您将django模型映射到python数据类,但是现在不复存在了.您仍然可以使用退回的机器对其进行检查: https://web.archive.org/web/20201111163327/https://github.com/proofit404/mappers https://web.archive.org/web/20201101163715/ht
..
在ETL管道上工作时,我偶然发现了一个问题.我正在使用数据类dataclass来解析JSON对象. JSON对象的关键字之一是保留关键字.有没有解决的办法: from dataclasses import dataclass import jsons out = {"yield": 0.21} @dataclass class PriceObj: asOfDate: str
..
python标准的 Field 类的文档数据类模块仅指定: 其记录的属性为: [...] type:字段的类型. 对我来说,这似乎意味着该字段将包含类型本身,而不仅是字符串形式的名称. 但是,似乎它只是简单地按原样复制类型注释,从而使它变得毫无用处. 示例: @dataclasses.dataclass class C: c: 'C' datac
..