список интерпретируется как строка - PullRequest
0 голосов
/ 24 октября 2018

Я получаю сообщение об ошибке: «У объекта 'str' нет атрибута 'append'", и я не понимаю, почему, поскольку я определил объект как список, так где же ошибка?

class A:
    inputliste = []
    inputfilepath = inputfilepath
    def __init__(self,inputfilepath):                       
        self.inputfilepath = inputfilepath   

    def __init__(self,inputliste):
        self.inputliste = inputliste

    def fileopening(self):                                      
        with open(self.inputfilepath,"rb") as inputfile:
            byte = inputfile.read(1)
            while byte:
                self.inputliste.append(byte.hex())
                byte = inputfile.read(1) 

inputfilepath = C:\...
a = A(inputfilepath)
a.fileopening()

Ошибка относится к строке, где говорится: self.inputliste.append(byte.hex())

1 Ответ

0 голосов
/ 24 октября 2018

В вашем конструкторе __init__ вы устанавливаете переменную self.inputliste в inputliste, которая передается в конструктор.При создании нового объекта класса A вы передаете inputfilepath в конструктор и, следовательно, переопределяете переменную inputliste на str, поэтому он жалуется, что не может добавить к str

...