Python 使用类获取名称元素时出现问题

Python 使用类获取名称元素时出现问题,python,class,Python,Class,我有这个名字的密码。当调用get_middle、get_last、get_suffix和get_name时,它们都返回none。我认为在名称中拆分元素有问题,但我不确定如何修复它。谢谢你的帮助 class Name: def __init__(self, name = ''): self.name = [(elem) for elem in name.split()] self.count = len(self.name) def set_fi

我有这个名字的密码。当调用get_middle、get_last、get_suffix和get_name时,它们都返回none。我认为在名称中拆分元素有问题,但我不确定如何修复它。谢谢你的帮助

class Name:

    def __init__(self, name = ''):
        self.name = [(elem) for elem in name.split()]
        self.count = len(self.name)

    def set_first(self, value):
        self.name.append(value)

    def set_middle(self, value):
        self.name.append(value)

    def set_last(self, value):
        self.name.append(value)

    def set_suffix(self, value):
        self.name.append(value)

    def get_first(self):
        if len(self.name) >= 1:
            return self.name[0]
        else:
            return False

    def get_middle(self):
        if len(self.name) >= 3:
            return self.name[1]
        else:
            return False

    def get_last(self):
        if len(self.name) == 2:
            return self.name[1]
        if len(self.name) > 2:
            return self.name[2]
        else:
            return False

    def get_suffix(self):
        if len(self.name) == 3:
            return self.name[2]
        if len(self.name) > 3:
            return self.name[3]
        else:
            return False

    def get_count(self):
        return self.count

    def get_name(self):
        for item in self.name:
            print(item, end = ' ')

    def get_initials(self):
        pass

创建一个像
n=Name(“Steve S Smith”)
这样的实例,然后调用
n.get_first()
返回“Steve”。也许你可以展示一下你是如何使用它的。你能提供一些输入、预期输出的例子,以及你是如何初始化这个类的实例的吗?在使用我的名字(如so
name(“James R McHugh”)
进行测试时,我收到了所有函数的预期输出。因此,我正在使用家庭作业提交服务来解决这个问题,它看起来像是在运行特定的测试,例如,只使用“Gates”获取最后一个,而不是运行全名并测试它。我现在通过将else语句更改为只返回名称来修复该问题。但是,即使在编辑之后,get_name仍然不起作用。如果有人知道如何解决这个问题,我将非常感谢您的帮助!