Найти - Пользователи
Полная версия: xlwt кодировка
Начало » Python для новичков » xlwt кодировка
1 2 3 4
Nefilim
у меня этот код вызывает ошибку

>>> print u'Лист'.encode('cp1251')

Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
print u'Лист'.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>
Ferroman
Вы это в чём запустили? В консоли?
Nefilim
да, в консоли
Zubchick
перечитал первый пост… попробуйте просто указать кодировку cp1251 в начале файла, а все u'string' заменить на ‘string’ и все должно отображаться нормально (:
Ferroman
А вот это уже странно.
Я запускаю cmd -> python.exe -> код
Все работает корректно.
Nefilim
Zubchick
попробуйте просто указать кодировку cp1251 в начале файла, а все u'string' заменить на ‘string’ и все должно отображаться нормально (:
Спасибо, но к сожалению не работает

# -*- coding: cp1251 -*-
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)

#работаем с экселем
#-------------------------------------


>>> x = cxlslog('123.xls')
>>> x.addlist('Лист1')
Traceback (most recent call last):
File "D:\Program Files\Wing IDE 101 3.2\src\debug\tserver\_sandbox.py", line 1, in <module>
# Used internally for debug sandbox under external interpreter
File "D:\Program Files\Wing IDE 101 3.2\src\debug\tserver\_sandbox.py", line 12, in addlist
File "d:\Python26\Lib\site-packages\xlwt\Workbook.py", line 317, in add_sheet
sheetname = sheetname.decode(self.encoding)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)
Ferroman
>>> x = cxlslog('123.xls')
Ещё раз спрошу.
Вы эти вызовы делаете в консоли cmd или в какой-то другой консоли, какой-нибудь IDE?
Nefilim
Ferroman
в консоли cmd или в какой-то другой консоли, какой-нибудь IDE?
В консоли cmd
Nefilim
н-да … попробую проделать это на домашней машине … спасибо за советы.
Nefilim
Переустановил python. Теперь в консоли

import xlwt

x = xlwt.Workbook()
x.add_sheet(u'Лист1')
x.save('123.xls')
работает корректно, однако, тот же код при вызове в стандартной IDE выдает вместо имени листа excel иероглифы, возможно ли это поправить?
Спасибо за внимание …
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