Форум сайта python.su
0
a = Строка кириллицей
print a - печатает текст
f.write(a) - шестнадцатиричные коды
Какое нужно преобразование, чтобы получить читаемый текстовый файл вместо кодов?
Офлайн
103
вы или текстовый файл неправильно открываете
может редактор не знает кодировку
или неправильно открываете файл для записи
скиньте файл с шестнадцатеричными кодами
и код
и напишите какая версия пайтона и ос
Офлайн
253
NickYorkНикакого. В том средстве которым файл смотрите выставьте правильную кодировку содержимого.
Какое нужно преобразование
#!/usr/bin/env python # -*- coding: utf-8-*-
a = u"Строка кириллицей"
f.write(a.encode("utf-8"))
import codecs f=codecs.open("...","w",encoding="utf-8") f.write(a)
Отредактировано doza_and (Май 17, 2015 23:22:09)
Офлайн
253
Только сейчас другому челу объяснял. :)
под виндой с русской локалью:
#!/usr/bin/env python # -*- coding: utf-8 -*- import codecs a="русское" with open("aa.dat","w") as f: f.write(a)
#!/usr/bin/env python # -*- coding: utf-8 -*- import codecs a=u"русское" with open("aa.dat","w") as f: f.write(a) Traceback (most recent call last): File "C:\PROJECTS\egor_petrov\mcu_new\aaa\a.py", line 7, in <module> f.write(a) UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-6: ordinal not in range(128)
#!/usr/bin/env python # -*- coding: utf-8 -*- import codecs a=u"русское" with codecs.open("aa.dat","w",encoding="utf-8") as f: f.write(a)
Отредактировано doza_and (Май 17, 2015 23:31:13)
Офлайн
0
Python 2.7 Windows/Xp
В данном коде s - вложенные списки с текстами
В файл ничего не пишется, а печать через lsprint() (процедура распечатки списка строк через print)
на экран проходит нормально
############################
# main module
import a5
s=a5.main()
f=open('c
pmod/rapt/ex.txt','w')
for i in range(len(s)):
f.write(s)
f.close
a5.lsprint (s)
Офлайн
0
В программе ничего кириллицей не пишу, кроме констант, кодировка одинаковая
а программа предназначена для анализа русских текстов.
Офлайн
103
for i in range(len(s)): f.write(s)
Офлайн
0
Там код был посложнее. Почему-то индексы пропали.
Спасибо за советы. Буду разбираться дальше.
Офлайн
1
import codecs file = codecs.open('D:/filename.txt', 'w', 'utf-8') file.write('Привет') file.close()
Офлайн