gpt4 book ai didi

Python __init__.py 和类

转载 作者:太空狗 更新时间:2023-10-30 01:21:11 25 4
gpt4 key购买 nike

在 __init__.py 文件中定义类是否被认为是不好的做法?我有一个类似于税务计算器的案例。我想要一个计算器类,然后是计算器类在内部引用的一组特定于州的税收计算器类。像这样的东西:

class TaxCalculator():

def __init__(self):
self.ca_tax_calculator = CATaxCalculator()
self.ny_tax_calculator = NYTaxCalculator()

def get_tax_calculator_for_state(self, state):
tax_calculator = None
if state == "CA":
tax_calculator = self.ca_tax_calculator
else:
tax_calculator = self.ny_tax_calculator
return tax_calculator

def calculate(self, purchase_info):
return self.get_tax_calculator_for_state(purchase_info.state).calculate(purchase_info.amount)

我正在考虑的目录结构如下所示:

/calculators/__init__.py
/calculators/ca.py
/calculators/ny.py

__init__.py 包含“TaxCalculator”函数。

类将引用计算器,即:

from calculators import TaxCalculator

calculator = TaxCalculator().calculate(purchase_info)

这被认为是不好的做法还是不是真正的 Pythonic?

最佳答案

通常 __init__.py 文件用于初始化您的包,例如导入内容、将位置添加到您的路径、定义版本或使用 __all__ 公开内容,但通常它也是空的。但是我建议你给更大的类/函数它自己的文件。它更易于维护。

关于Python __init__.py 和类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33379193/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com