Уведомления

Группа в Telegram: @pythonsu

#1 Июль 26, 2011 13:22:08

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

Сортировка тестовых файлов.

Проверил у себя - после сортировки теряется один символ (в файле он самый первый), он же отображается у меня двума точками (Linux + UTF8 основная кодировка), есть подозрение что что-то не так с кодировкой этих символов.

Офлайн

#2 Июль 26, 2011 22:25:55

Oddler
От:
Зарегистрирован: 2011-07-17
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Сортировка тестовых файлов.

Но вопрос в чем именно там проблема. Придется копаться серьезно, как будет время.
В таком случае могу я попросить об одолжении выложить файл - результат выполнения скрипта на тех файлах с символами и словами, что я давал в предыдущем посте? Вы же сказали что у вас получилось все нормально с символами. Просто неизвестно сколько еще придется возиться с этой проблемой, а результат мне нужный, вроде как у вас уже есть.



Офлайн

#3 Июль 27, 2011 09:15:20

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

Сортировка тестовых файлов.

В архиве мой скрипт и результат его работы по вашим данным

http://rghost.ru/download/private/15917071/b5fe39ae7cae0d37bfa2afd6803fab64/bccabfc7940eb9b8c6f28a956f8f1c084f03359f/dict_test.tar.gz

Офлайн

#4 Июль 28, 2011 14:29:00

Oddler
От:
Зарегистрирован: 2011-07-17
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Сортировка тестовых файлов.

Скачал третью ветку Python'а.
Там уже конкретно ссылается на ошибку, а не пропускает.

Traceback (most recent call last):
File "C:\test.py", line 3, in <module>
lines = open('E:/words.txt').readlines()
File "C:\Python32\lib\encodings\cp1251.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x98 in position 4525: character maps to <undefined>
Это в скрипте kachayev. В другом скрипте ошибка такая же, но, естественно в другой строке и т.п.

Ну, соответсвенно, я вписал encoding='utf-8' и кажись заработало.



Отредактировано (Июль 28, 2011 15:04:02)

Офлайн

#5 Июль 28, 2011 15:36:46

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

Сортировка тестовых файлов.

начинайте ваши скрипты со строчки ‘# -*- coding: utf-8 -*-’ (без кавычек) и все у вас будет хорошо )

Отредактировано (Июль 28, 2011 15:37:12)

Офлайн

#6 Июль 28, 2011 16:39:58

Oddler
От:
Зарегистрирован: 2011-07-17
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Сортировка тестовых файлов.

s0rg
начинайте ваши скрипты со строчки ‘# -*- coding: utf-8 -*-’ (без кавычек) и все у вас будет хорошо )
Ну это я делал - не помогало.
В любо случае import codecs и encoding='utf-8' похоже решили мою проблему. А вам большое спасибо за скрипты еще раз.



Отредактировано (Июль 28, 2011 16:57:20)

Офлайн

#7 Июль 28, 2011 18:14:57

Isem
От:
Зарегистрирован: 2010-08-27
Сообщения: 447
Репутация: +  7  -
Профиль   Отправить e-mail  

Сортировка тестовых файлов.

При открытии файла указывайте кодировку:

f = open('file2.txt', 'r', encoding='utf-8')



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version