SyntaxError - 如何修复?

时间:2017-11-02 22:53:36

标签: python

我的python代码错误: 我想用python创建一个联系人管理器应用程序,用于添加一个指定了名称,姓氏,wtsp,face(如果它存在)的联系人,... 或编辑其他人(联系人) 或者只是删除它  并需要你的帮助PLZ 这是我的代码

<



contact_list =[]

class Contact:

    nb_contact = 0

    def __init__(self ,nom ='' ,prenom='' , email ='' , tel ='' , whatsapp = '' ):

        self.nom=nom

        self.prenom= prenom

        self.email=email

        self.tel = tel

        self.whatsapp= whatsapp


        Contact.nb_contact +=1
        self.nb=Contact.nb_contact
        self=[self.nom,self.prenom,self.email,self.tel,self.whatsapp]

    def show(self):

        ch = str(self.nb)

        print("Contact :" +ch +"\n Nom  : "+self.nom +"\n Prenom  : "+self.prenom +"\n Email  : "+self.email +"\n Tel  : "+self.tel +"\n Whatsapp : "+self.whatsapp)

    def Add(self):
        contact_list.append(self)
    def Supprimer(self):
        contact_list.remove(self)

    def find_contact(self,tel):

        for l in contact_list:
            for i in l:
             n, p, e, phone, whp = l[i]
             if phone == tel:
                Contact.show(l)

    def my_contacts(self):
        print("List of my contacts :")
        for i in contact_list:

            Contact.show(i)
    def set_contact(self):
        self.nom=input("Entre  le nouveau nom :")
        self.prenom = input("Entre  le nouveau prenom :")
        self.email = input("Entre  le nouveau mail :")
        self.whatsapp = input("Entre  le nouveau whatsapp :")
        self.tel = input("Entre  le nouveau tel :")


C=Contact('eric','jean','sid@h.c','0011','144')
C1=Contact('erric','michel','sid@h.c','1111','1111')


C.Add()
C1.Add()
C1.find_contact('1111')
>

enter image description here

1 个答案:

答案 0 :(得分:1)

find_contact(tel)是一个实例方法,因此应该声明为:

def find_contact(self, tel):
    ...

当你用:

打电话时
C1.find_contact('1111')

因为它是在课程实例上调用的,所以它被翻译成:

find_contact(c1, '1111')

这就是为什么你看到错误,说这个方法应该只用一个参数调用,但是给出了两个参数。