Image

Imageonorua wrote in Imageru_python

Category:

Русская кодировка и python совместимы?

Как правильно работать с русскими именами файлов в кодировке koi8-r? Есть скрипт который переименовывает все файлы и папки в из любого формата в формат "Первая Большая Буква", и вот когда я пытаюсь переименовать файлы в кодировке koi8-r - у меня они просто пропускаются. Я так подозреваю что это потому что у меня python онвская кодировка latin1. Как правильно работать с русскими файлами, если учесть что кодировка системная может менятся.
Туже картину я наблюдаю когда пытаюсь сделать INSERT в базу данных,
=================================
AttributeError: 'tuple' object has no attribute 'encode'

Traceback (innermost last):

File "/home/onorua/fssearch/main.py", line 1, in ?
#!/usr/bin/python
File "/home/onorua/fssearch/main.py", line 56, in ?
result = db_insert(splited, mtime)
File "/home/onorua/fssearch/main.py", line 31, in db_insert
result = mysql.execute(sql)
File "/usr/lib/python2.3/site-packages/MySQLdb/cursors.py", line 146, in execute
query = query.encode(charset)
=================================

Перерыл пол интерента, пытался добавлять #-*-*-unicode.. в верху файла, пытался делать unicode(sql, 'koi8-r') - результат не радует... Помогите если есть какие-то идеи или решения.
Спасибо