Найти - Пользователи
Полная версия: xlwt кодировка
Начало » Python для новичков » xlwt кодировка
1 2 3 4
Nefilim
import xlwt as xl
x = xl.Workbook()
x.add_sheet(u'Лист1')
x.save('123.xls')
Название листа отображается кракозяброй … что-то не то с кодировкой. Как лечится?
xl.Workbook('utf-8') можно задать параметр но не помогает …
помогите пожалуйста.
Windows XP/ Python 2.6
regall
В начале файла
# coding:utf-8
есть?
Nefilim
есть
Nefilim
>>> x.add_sheet(u'Лист1'.encode('cp1251'))

Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
x.add_sheet(u'Лист1'.encode('cp1251'))
File "D:\Python26\lib\encodings\cp1251.py", line 12, in encode
return codecs.charmap_encode(input,errors,encoding_table)
UnicodeEncodeError: 'charmap' codec can't encode characters in position 0-3: character maps to <undefined>
увы …
pyuser
regall
В начале файла
Код:
# coding: utf-8
есть?
совсем недавно на форуме обсуждалось нечто подобное. мало указать кодировку, нужно еще и файл сохранить в этой кодировке :). при соблюдении этих условий библиотека работает корректно.
regall
pyuser
файл сохранить в этой кодировке smile
ы, как-то упустил это, так как у меня Эклипс уже кто-знает сколько глобально настроен на utf-8, то с проблемой не сталкивался давно =)
Zubchick
О_о'
Мне казалось что эклипс, что емакс-что pyscripter при указании кодировки в первой строчке сохраняет файл именно в той кодировке… Мб оп пишет в стандартном блокноте? +)
regall
offtop:
Zubchick
кодировки в первой строчке сохраняет файл именно в той кодировке…
Pydev, насколько мне известно, нет, он сохраняет файлы в кодировке, которая установлена для текущей папки проекта, а в последнем вообще появилась монстрячая фича: автоопределение кодировки (если чесно, то очень хреново работает, лучше б они там поставили return ‘utf-8’ :D)
Nefilim
Zubchick
Мб оп пишет в стандартном блокноте? +)
пользуюсь IDLE 2.6 …

спасибо всем за советы, попробую использовать какой-нибудь редактор . в принципе у меня есть dr Python
Nefilim
и все-таки что я делаю неверно?
файл в utf-8

# -*- coding: utf8 -*-
import xlwt as xlw
#работаем с экселем
class cxlslog:
filename = ""
wl = None
def __init__(self,fname):
self.wl = xlw.Workbook()
self.filename = fname

def addlist(self,lname):
self.wl.add_sheet(lname)

def save(self):
self.wl.save(self.filename)

#работаем с экселем
все-равно кракозябры, правда теперь другие, более размашистые
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB