小编Kur*_*ine的帖子

在数据类中创建类变量的正确方法

我刚刚开始使用 Python 的数据类,我想确认我正在以正确的方式声明类变量。

使用常规的 Python 类

class Employee:

    raise_amount = .05

    def __init__(self, fname, lname, pay):
        self.fname = fname
        self.lname = lname
        self.pay = pay
Run Code Online (Sandbox Code Playgroud)

使用 python 数据类

@dataclass
class Employee:
    fname: str
    lname: str
    pay: int
    raise_amount = .05
Run Code Online (Sandbox Code Playgroud)

我所指的类变量是raise_amount. 这是使用数据类正确声明的类变量吗?或者有更好的方法吗?

我已经测试了数据类实现,它提供了预期的功能,但我主要想知道我的实现是否遵循最佳实践。

python python-3.x python-dataclasses

10
推荐指数
2
解决办法
3345
查看次数

输入返回 loguru 记录器的提示

有谁知道返回 loguru 记录器的正确类型提示?使用loguru.Logger通过 mypy 检查,但是当get_logger调用该函数时出现错误AttributeError: module 'loguru' has no attribute 'Logger'

import copy
from pathlib import Path
from sys import stdout

from loguru import logger
import loguru


def get_logger(log_path: Path) -> loguru.Logger:
    logger.remove()
    logger_ = copy.deepcopy(logger)
    logger_.add(stdout)
    logger_.add(f"{log_path}.log")

    return logger_

Run Code Online (Sandbox Code Playgroud)

python logging python-3.x

4
推荐指数
1
解决办法
2504
查看次数

标签 统计

python ×2

python-3.x ×2

logging ×1

python-dataclasses ×1