__init __ () отсутствует 1 обязательный позиционный аргумент: 'receiveer'? - PullRequest
0 голосов
/ 11 декабря 2019

Я пытаюсь получить данные слова через базу данных с sqlite3 и python, но когда я пытаюсь вызвать функцию read_from_db, у меня появляется эта ошибка _init __ (), пропускающая 1 обязательный позиционный аргумент: 'receiveer'. Кажется, я не могу найти, что случилось
вот код

conn = sqlite3.connect('yeet1.db')
cursor = conn.cursor()


class Ui_WordWindow(object):


    def __init__(self, receiver):  #Inherit user-input word from another window

        self.receiver = receiver        
        print(self.receiver) #Checking if it worked correctly

    def read_From_db(self): #Read and print out data of user-input word

         cursor.execute(('SELECT * FROM mytable WHERE Meaning = ?', self.receiver))
         data = cursor.fetchall()
         print(data)




window2 = Ui_WordWindow()
window2.read_From_db()
cursor.close()
conn.close

1 Ответ

0 голосов
/ 11 декабря 2019

Приемный объект = "какое-то значение"

conn = sqlite3.connect('yeet1.db')
cursor = conn.cursor()


class Ui_WordWindow(object):


    def __init__(self, receiver):  #Inherit user-input word from another window

        self.receiver = receiver        
        print(self.receiver) #Checking if it worked correctly
        #when you print self.receiver it means the value which you are passing say for example "test"  

    def read_From_db(self): #Read and print out data of user-input word

         cursor.execute(('SELECT * FROM mytable WHERE Meaning = ?', "test"))

         # now the query becomes select * from mytable where meaning = 'test'
         # the value 'test' is being passed by the receiver object and you need to provide that value

         data = cursor.fetchall()
         print(data)




window2 = Ui_WordWindow(receiver) # which has some value ex 'test'
window2.read_From_db()
cursor.close()
conn.close

, вам нужно освежить в объектно-ориентированный подход . попробуйте прочитать из этого: объектно-ориентированный Python

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...