Другой вопрос новичков Python, но я не могу найти ответ Googling. Что я делаю не так?AttributeError: объект 'tuple' не имеет атрибута 'getFieldByName'
for dbTrack in db.execute('SELECT * FROM tracks'):
genre = dbTrack.getFieldByName(genre)
artist = dbTrack.getFieldByName(artist)
album = dbTrack.getFieldByName(album)
title = dbTrack.getFieldByName(title)
Traceback (most recent call last):
File "G:/personal/Python/Mp3Gen/test.py", line 207, in <module>
genre = dbTrack.getFieldByName(genre)
AttributeError: 'tuple' object has no attribute 'getFieldByName'
[Update] db
от db = sqlite3.connect(SQLITE_DATABSE_NAME)
Как я могу идти о получении этих полей? dbTrack = {tuple}(None, 'The Verve Pipe', 'Villains', 'The Freshmen')
Я просто использую dbTracks[0]
и т. Д.?
Я согласен с @ abarnert, что это не хорошая практика. Я бы не сделать это на любом другом языке программирования, но, будучи настолько новым для Python, я не могу найти, как getFieldByName
'dtTrack' является кортежем, а не тем, о чем вы думаете. Не зная, что такое '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ''' '' '' ''), вам трудно сказать больше, кроме этого, за исключением того, что вы, вероятно, –
просто зарегистрируйте содержимое 'dbTrack', вы увидите, как он выглядит, и почему это не тот объект с этим методом, который вы хотите назвать – njzk2
Почему, по вашему мнению, строки результатов SQL имели бы' getFieldByName() ' метод? Вероятно, вы можете просто использовать жанр, исполнителя, альбом, название = dbTrack. –