Печать только 1 значения из списка, но существует более одного | SQL LITE PYTHON - PullRequest
0 голосов
/ 28 апреля 2019

Здравствуйте, я делаю маленький проект с python и sqlite3,

Итак, у меня есть класс YPSurvey_Final с уже предопределенными значениями для подключения к базе данных с именем YoungPeopleFinal.db

Это код для файла класса -

import sqlite3

class YPSurvey_Final:

def __init__(self, database):
    self.__databaseName = database
    self.__conn = sqlite3.connect(database)
    self.__cur = self.__conn.cursor()

def getNumberOfEachPhobia(self):
    """Returns the total number of people who took the survey"""
    self.__cur.execute("SELECT Phobia, COUNT(*) FROM Phobias GROUP BY Phobia ORDER BY Phobia")
    for row in self.__cur:
        self.__phobiaList.append(row)
    return self.__phobiaList

Моя проблема в том, что он печатает только одно значение из базы данных (Storm, 123), и есть еще 9 фобий для печати. ​​

Я пытался использовать этот код в отдельном файле, и он работал нормально, как и предполагалось

import sqlite3

conn = sqlite3.connect('YoungPeopleFinal.db')
cur = conn.cursor()

cur.execute("SELECT Phobia, COUNT(*) FROM Phobias GROUP BY Phobia ORDER BY Phobia")


for row in cur:
    print (row)
cur.close()
conn.close()

Так что мне нужна помощь, чтобы выяснить способ печати всех значений.

база данных имеет все значения и на 100% работает и корректна, так что это не ошибка БД.

Так я называю свой файл класса

from YPSurvey_Final import YPSurvey_Final

def main():

base = YPSurvey_Final("YoungPeopleFinal.db")
print (base.getNumberOfEachPhobia())
main()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...