将动态电话簿中的姓名、号码和别名保存到文件中

Saving name, number and alias from a dynamic phonebook to a file

我正在制作一本动态的 phone-book,您可以在其中保存姓名、电话号码和别名。完成后,您也可以选择将所有内容保存到文件中,这就是问题所在。我已经想出如何保存我的名字和号码,但不是别名。

这是我保存别名的函数的一部分:

def main()
..stuff
    def alias(person_list, input_list):
        ..stuff..
        for persons in list(person_list):
             ..stuff..
             person_list[person_list.index(persons)].addAlias(newname)
             print "Alias saved"

我使用的方法:

class person():
   ..stuff..
   def addAlias(self, alias):
        self.alias.append(alias)

    def hasAlias(self, alias):
        if alias in self.alias:
            return True
        else:
            return False

这是我要保存所有内容的功能:

def save(input_list, person_list):
    filename = input_list[1]
    f = open(filename, "w")
    for i in range(0, len(person_list)):
        line = person_list[i].number + ";" + person_list[i].name + ";" + "\n"
        f.write(line,) 
    f.close

我可以通过 hasAlias 方法查明元素 person_list[i] 是否有别名,但我不知道如何得到值别名,而不仅仅是 True 和 False,并将其与姓名和号码一起打印出来。

你的问题描述不够清楚,我无法确定你想要什么。请参考MCVE.

认为您只是缺少一种检索别名的方法,例如

getAlais(self):
    return self.alias

然后您只需将该调用包含在您的输出行中。如果这不是 "get out the value alias" 的意思,请说明。