【发布时间】:2017-01-16 03:18:46
【问题描述】:
对于一个任务,我必须编写一个可以创建目录和文件的程序,我们必须编写一个 DirectoryEntry 类来帮助执行此操作,并且对于其中的一部分,我们必须为文件或目录创建一个名称。如果输入了名称,那么我们只使用名称,但如果没有输入名称,我们只使用 9 个空格。
我不知道如何使用 __init__ 方法来做到这一点,因为 Python3 不允许您拥有多个构造方法。
现在看起来像:
def __init__(self, name):
self.type = "f:"
self.name = name
self.length = "0000"
self.colon = ":"
self.blocks = ["000", "000", "000", "000", "000", "000", "000", "000", "000", "000", "000", "000"]`
【问题讨论】:
-
你可以有一个默认参数,只要它不是一个可变对象。例如:
def __init__(self, name=' '):。但是,9 个空格是一个合理的文件名吗?
标签: python default-value default-constructor