fbpx

Python и Sqlite. Вывести Русские символы

294 просмотра
0

Здравствуйте! Возникла проблема при работе с Python и SQLite. Вот код, в котором я создаю столбцы, заполняю данными, а потом пытаюсь эти данные вывести.

conn = sqlite3.connect('mydb.db')
c = conn.cursor()
conn.execute("create table if not exists person(firstname, spots)")
data = [(u"Иван", 10), (u"Марья", 20)]
conn.executemany("insert into person(firstname, spots) values (?, ?)",data)
conn.commit()
 
c.execute('select * from person order by firstname')
while True:
    tmp=c.fetchone()
    if tmp:
        print repr(tmp)
        print tmp
    else:
        break

Но на выводе получаю что-то типа этого:

(u'\u041c\u0430\u0440\u044c\u044f')

Как решить проблему? Буду благодарен.
P.S. Ubuntu Linux, Python 3.3


Добавить комментарий

1 Ответы

Python Опубликовано 20.03.2019
0

У вас идет вывод на Юникоде: \u041c=М, \u0430=а, а консоль ваша очевидно не понимает Юникод.

Надо либо вывод транслировать в KOI-8 на котором работает большинство консолей либо найти консоль понимающую Юникод.

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up